How to implement the shadow like FOV ?

I want to create a game with  FOV (Field of vision/view ) and Fog Of War.
Like http://christmasexperiments.com/experiments/11  .
and
http://www.unwinnable.com/wp-content/uploads/2013/06/Monaco.jpg
https://7yrl.files.wordpress.com/2013/12/helives.png
http://www.playchilla.com/wp-content/uploads/2012/12/2d-shadows.png
http://i.imgur.com/B8g2o7b.jpg
http://lab.wx3.com/temp/screenshot01.jpg
Could pixi-light help me ?  How to implement  ?
Thanks
P.S. :
I know the  algorithm of FOV , and I could implement it on Canvas2D with hard-edge.
like this  https://camo.githubusercontent.com/88bfed3e14132b417d9f5c7d01bca0b9a803abf9/687474703a2f2f692e696d6775722e636f6d2f335371706942542e6a7067 .
But I don't know how to create a FOV with soft-edges and  dynamic 2d lighting effect by Pixi.js

Raycasting is a common way of doing this: http://www.redblobgames.com/articles/visibility/
This lib doesn't implement shadows, but the experiment you linked does so that might be helpful as well.

I've read this article  two years ago and I said "I know the algorithm of FOV , and I could implement it on Canvas2D with hard-edge."
P.S. : the Raycasting is not a good way.
Whatever , thanks a lot.

Raycasting is the most common way of doing this. You raycasst, develop the results into geometry that you draw using the method I described.

this example : http://christmasexperiments.com/experiments/11
Don't use this project ?

No it does not, it was written before this plugin was created and while it uses "deffered rendering" it is done in a more specific way to fullfill the requirements of the Christmas Experiment.
This library implements a simple deferred renderer and normal rendering.


Material Color Theme implemented.

Added Material3 Theme colors
Updated color of IPFAB, BottomnavigationBar, few screen background, IPAppBar.

@sev3rus @YANLING-H @sarahhjchung @uhalder @halderp - Updated all light & dark color codes of Material Theme color scheme.
Please use MaterialColorPalette to match any Figma color henceforth. Also check the dark mode screen while implementing any current/future features.
In my next PR, I will remove the extra colors which we have used earlier.


feat(CNS-4317): add AI category icon

Summary
Add left menu icon for the AI products.
Ask if you need the related jira ticket.
Type

Feature

Summarise concisely:
What is expected?
(Description of the new behavior)
The following changes where made:
(Describe what you did)

Relevant logs and/or screenshots

The viewBox of the icon is not well configured it should be 0 0 18 18

can you confirmed that it's ok now ?


feat(list): adding switch option

@rikbrowning - this is good to go. if you can resolve the merge conflicts, we are ready to merge


Add information about padding behavior for SafeAreaView

Deploy preview for react-native processing.
Building with commit 904f9316396bec09b7ae0592c4386c515e15ae46
https://app.netlify.com/sites/react-native/deploys/5e948b9c643de20007be1f9a


Design download page to include Data description, brief description of project, contact info.

Button link to DOWNLOAD
Hyperlink to email for<EMAIL_ADDRESS>

Button color the lighter/turquoise color from the logo? #00b3e6

Most recent design of sorts for download page
https://xd.adobe.com/view/ac2680f4-8f06-4a09-4c90-b0f976e5d213-da17/


How to proxy h2c grpc by pingora?

Below is my current code, my grpc server currently sends a connection to this pingora program but it is immediately rejected.

Probing h2c is currently TODO, so you have to explicitly set this option on the plaintext port to only allow h2c.
https://github.com/cloudflare/pingora/blob/8ae4ebbf02cb9cf429528e120425a298d7862e57/pingora-core/src/apps/mod.rs#L61

I have successfully proxy h2c grpc, thank you for your help.


The new file desn't run under Java 11 for some reason

Hi all.
I tried to run the latest JAR file under Java 11 but for some reason I'm getting these exceptions:

Here's the full details on my Java installation (for reference):

How to reproduce the problem: Download AdoptOpenJDK version 11, install it, set it to JAVA_HOME and try to run the new Liftoff JAR through it.
So what's going on and what do I do about it?
Zishan Rahman.

You're correct, it was accidentally built with Java 15 when I should have used Java 8. I'm updating the release right now, with a JAR that should run with any Java 8 or higher.

You're correct, it was accidentally built with Java 15 when I should have used Java 8. I'm updating the release right now, with a JAR that should run with any Java 8 or higher.

OK, thanks!


Gift Card Mutation Added

Issue #98 has been solved. Which was opened by me previous week.
I have added mutation to update Gift Card codes on the Cart.
It's just like Discount Code Update mutation which accepts the List of codes to apply or remove/update.

Thank you for creating the PR.
But the PR is incomplete. The updateGiftCardCodesMutation you created has the appliedGiftCards property, but the Cart model does not seem to have been updated to reflect the changes. You can not access the applied gift card property in the cart.
If it was intended, then please remove the appliedGiftCards from the mutation.
Or
Please update all cart-related mutations and queries to add the appliedGiftCards property and update the cart model to access it


How to bind html 'input' to template variable

Problem, when I changing first input helper not recalculates value:
   <script id="payment" type="text/x-handlebars-template">
   <input type="text" value="{{ val }}">
   <input type="text" value="{{ rate val }}">
   </script>

    Handlebars.registerHelper('rate', function(val) {
            return val * 2;
    });

    var popupTpl = Handlebars.compile($('#payment').html());
     popupHTML = popupTpl({val:9});

How to bind html 'input' to template variable (val) in a right way?

This is outside of the scope of Handlebars proper as we only render a string and we are not aware of the actual content. The tildeio/htmlbars project would be a better forum to raise this question with as that is explicitly targeted at rendering HTML content.

Did anything ever come up about this? Looking to do something like this

This still is not part of Handlebars, but maybe the. incremental-bars project is doing it.


Type errors when adding additional dayjs plugins

  import { svelteTime, dayjs } from 'svelte-time'

  import localizedFormat from 'dayjs/esm/plugin/localizedFormat'
  dayjs.extend(localizedFormat)

  import timezone from 'dayjs/esm/plugin/timezone'
  dayjs.extend(timezone)

  <time
    use:svelteTime=({
      ...
    })
  />

/work/app/frontend/javascripts/components/date_time.svelte:6:16
Error: Argument of type 'PluginFunc' is not assignable to parameter of type 'PluginFunc<unknown>'.
  Types of parameters 'c' and 'c' are incompatible.
    Type 'typeof import("/work/node_modules/svelte-time/node_modules/dayjs/esm/index").Dayjs' is not assignable to type 'typeof import("/work/node_modules/dayjs/esm/index").Dayjs'.
      Types of construct signatures are incompatible.
        Type 'new (config?: string | number | Date | Dayjs | null | undefined) => Dayjs' is not assignable to type 'new (config?: string | number | Date | Dayjs | null | undefined) => Dayjs'.
          Types of parameters 'config' and 'config' are incompatible.
            Type 'string | number | Date | import("/work/node_modules/dayjs/esm/index").Dayjs | null | undefined' is not assignable to type 'string | number | Date | import("/work/node_modules/svelte-time/node_modules/dayjs/esm/index").Dayjs | null | undefined'.
              Type 'Dayjs' is not assignable to type 'string | number | Date | Dayjs | null | undefined'.
                Type 'Dayjs' is missing the following properties from type 'Dayjs': fromNow, from, toNow, to (ts)

/work/app/frontend/javascripts/components/date_time.svelte:9:16
Error: Argument of type 'PluginFunc' is not assignable to parameter of type 'PluginFunc<unknown>'. (ts)

Adding import dayjs from 'dayjs/esm' at the top fixes the type errors, but then the plugins won't be active and give the correct result.
Would be handy if I could construct and pass in dayjs:
  import dayjs from 'dayjs/esm'

  import localizedFormat from 'dayjs/esm/plugin/localizedFormat'
  dayjs.extend(localizedFormat)

  import timezone from 'dayjs/esm/plugin/timezone'
  dayjs.extend(timezone)

  import { svelteTime } from 'svelte-time'

  <time
    use:svelteTime=({
      dayjs,
      ...
    })
  />

I figured out my issues:

My date objects were parsed from date strings that did not end with Z or any timezone postfix. This meant that they were parsed as dates without timezones which messed around with the dayjs support.
The code example does not work, indeed, with TypeScript, but there was an extremely easy fix. TypeScript notes that the non-ESM version of DayJS is not the same as the ESM version of DayJS and svelte-time exports the ESM version. So simply changing the plugin imports like this:
From:

import timezone from "dayjs/plugin/timezone"
import utc from "dayjs/plugin/utc"

To:
import timezone from 'dayjs/esm/plugin/timezone'
import utc from 'dayjs/esm/plugin/utc'

And everything works for me now.
Note: I am not using time and use:sveltetime, but instead the Time component from svelte-time. I don't know if this affects anything


Migration 0017 is repeated

It looks like I may have neglected to bump the migration number for the migration that was part of PR #138. While I don't think will break anything, I think it will be clearer if we keep these numbers unique.

Yeah I was thinking about this too and it kind of goes back to the idea of wanting migrations for different projects to be able to be separated. Having migrations in one space with multiple people working on it will frequently cause this to happen.
I think we'll either need to break up the migrations into separate directories or at maybe prefix the files and keep them independent. Though that would break what we have now. I've had to bump the name of the file in the PR I'm working on 3 times already and it all just depends what gets merged first.
Maybe leave the past as-is and think about a better solution for the future migrations?

Also if anyone had run this migration with the prior name it will mess up for them and they'll have to either dump their migration or manually roll it back, right? :/

Yes, they may have to wipe out their database, but that's fairly easy to do on a local development machine. I agree there are certainly issues with the current migration setup. Also, we (including myself) have been pretty inconsistent with our use of __depends__. The number matters if there is no __depends__.
Anyways, this is going to bug me if they are the same. I'm sorry you've had to change yours multiple times. You can always go higher, like 0030, until things are settled and you are ready to merge.

Yeah, I'll just go to 20 for now. It doesn't depend on anything any other tables right now.

migration files are in good sequence now.


[New Feature/Enhancement]: Allow to Choose NumPy/pandas for Group Aggregated Values

What is the New Feature/Enhancement?
To calculate percentile or quantile the module currently uses the pandas.Series.quantile method which works with the limited optional parameters {‘linear’, ‘lower’, ‘higher’, ‘midpoint’, ‘nearest’} (as on 20.04.2024). However, we can also choose np.quantile or np.percentile. This requires the following tweaks:

[ ] define argument to control module selection,
[ ] set the default behavior to pandas.Series.quantile method,
[ ] when choosing numpy set the default dropna = True as in pd.quantile,
[ ] allow to choose to drop null, or calculate using null with argument,
[ ] readability by updating documentations.

Code of Conduct

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

Added arguments basemod and dropna to control the behavior.


Request the release of your pretrain model

Dear developers,
Hello, I would like to ask if you can open the download path of the trained model used in your paper, thank you very much!

Here it is: https://zenodo.org/record/8124014

May I ask whether the text encoder of clip in this pre-trained model has been fine-tuned by the method in the paper?

Yes it has been (not all layers but only the last transformer layer + the projection layers)

As stated in the readme, "pip install -e ." Should solve this issue


Add terraform functions to terragrunt eval context

This PR allows you to use all of the built-in terraform functions in terragrunt files.
I'm not sure how to use dep, so if I messed up the Gopkg.* files let me know and I can revert that commit.

I didn't realize until writing the docs that this + hcl2 means you can use functions outside of a string interpolation, which is super cool.
    key    = format("%s/terraform.tfstate", path_relative_to_include())

I didn't realize until writing the docs that this + hcl2 means you can use functions outside of a string interpolation, which is super cool.

Yup!

Tests passed, merging now!

https://github.com/gruntwork-io/terragrunt/releases/tag/v0.19.4

Thanks!


Work on Poster

Kendra and I worked the team poster. We jotted down ideas for each section of the poster and created a simple layout for the poster.


Spanish changes from translation team

Purpose

closes #930

QA
QA link here
QA Spec

[x] On the About page: “Email” can be rendered in Spanish as “email” or as “correo electrónico”. For consistency with the term used in our translation, we recommend using “correo electrónico”, so this section reads “Correo electrónico<EMAIL_ADDRESS>[ ] Links that are routed to English sites (6 occurrences) should have a prefix of [en ingles]

Footer link - FOIA
Footer link - RFI link
About page - paragraph 1 - Executive order link 1
About page - paragraph 2 - Executive order link 2
About page - paragraph 3 - FAQ link
Link below the map

[ ] Percentile suffix of th in 65th percentile is replaced with .a in all occurrences. This is what the translation team mentioned:

For the census blocks: All other information in this section is translated into Spanish,
but the ordinal numbers (highlighted in the screenshot) throughout the tool are
abbreviated in English (e.g., 19th, 65th). We suggest changing this to the Spanish
ordinal number abbreviation, which is .o for masculine and .a for feminine gendered
words. ***Since this ranking applies to the communities of focus, which use a feminine
gender in Spanish, we recommend that the th ordinal abbreviation in English be
substituted with the feminine ordinal abbreviation in Spanish: .a  throughout the text.
E.g., 19th would be 19.a in Spanish and 65th would be 65.a

I'm interpreting this to mean that all percentiles will have a .a suffix since they are referring to a feminine topic (communities of focus). Not sure if that is different now that it's disadvantaged? If so, we can easily change it to .o.  Interesting to learn that the suffix is not based on the number, but rather what the number represents. 🤔

[ ] When a tract is selected, the methodology version on the top of the side panel is in Spanish.

@KameronKerger and/or @katherinedm-usds
Should we use square brackets vs parenthesis when designating a link will go to an English page (see footer here). The translation team recommended square brackets and Jorge recommended parenthesis. I am requesting for design and product to weight in. In some cases we already have something in parenthesis, in the FOIA link in the footer. How does consecutive parenthesis look?

@vim-usds I'm doing QA now, this link seems to go to https://www.federalregister.gov/documents/2021/02/01/2021-02177/tackling-the-climate-crisis-at-home-and-abroad#:~:text=Sec. 223. Justice40,40-percent goal. instead of EO

@vim-usds I'm doing QA now, this link seems to go to https://www.federalregister.gov/documents/2021/02/01/2021-02177/tackling-the-climate-crisis-at-home-and-abroad#:~:text=Sec. 223. Justice40,40-percent goal. instead of EO

thank you taking a look now!

CEQ requested that the link go to the fedreg and not the EO on wh.gov @katherinedm-usds

thanks @KameronKerger !
Looks all good @vim-usds !!


what is the difference of rm-padding = True and rm-padding = False?

what is the difference of rm-padding = True and rm-padding = False?

why rm-padding = True is faster than rm-padding = False

When setting the flag to be true, it will remove the useless padding. Details are in https://github.com/NVIDIA/FasterTransformer/blob/main/docs/encoder_guide.md#standard-bert-and-effective-fastertransformer.

Close this bug because it is inactivated. Feel free to re-open this issue if you still have any problem.


Fix auth's wildcard Match function

Address performance and malicious usage.
Fix #1996
Added unit test code from MinIO for testing the functionality.
Used the following modified benchmark code supplied by @arielshaqed to test code for malicious usage:
package wildcard

import (
	"strings"
	"testing"
)

func BenchmarkMatch(b *testing.B) {
	const pattern = "a*b*c*z"
	str := strings.Repeat("a", 1000) + strings.Repeat("b", 1000) + strings.Repeat("c", 1000)
	for i := 0; i < b.N; i++ {
		if Match(pattern, str) {
			b.Errorf("Expecteded '%s' NOT to match '%s'", str, pattern)
		}
	}
}

func BenchmarkMatchDuh(b *testing.B) {
	const pattern = "a*a*a*z"
	str := strings.Repeat("a", 2000)
	for i := 0; i < b.N; i++ {
		if Match(pattern, str) {
			b.Errorf("Expecteded '%s' NOT to match '%s'", str, pattern)
		}
	}
}

Test results of current implementation:
BenchmarkMatch-10                      1<PHONE_NUMBER> ns/op
BenchmarkMatchDuh-10                   1<PHONE_NUMBER>4 ns/op

Test results of the new implementation:
BenchmarkMatch-10                 176950              6804 ns/op
BenchmarkMatchDuh-10              264994              4511 ns/op

@arielshaqed thank you, credit to the Go team - I'll add the above explanation to the code so other will enjoy it.


Method 45 (ucmMethodSluiHijack) has been patched

Since Windows 10 v1803, the ucmMethodSluiHijack has been patched. Upon execution,it opens Windows settings with a dialog box prompting for a Windows Key.

Insider 17692. Repro success

Not reproducable.


Can't use the plugin

Hi @pnthach95, I can't use the plugin with Flipper, my stack is:
react-native-mmkv-storage version 0.8.0
react-native 0.69.4
flipper version 0.158.0
when I open Flipper I see the plugin unavailable:

You need to install this in your React Native project. I updated README about this.

Thanks 👍


vertices

Output vertices are always 3448, Can it be changed to other value?

Hi, sorry for the late reply. I suspect this is no longer a current question, but in any case: A 3DMM mesh has a fixed number of vertices. If you want a different number of vertices, you could post-process the mesh, or use a different morphable model.


fix(cli-service): remove highlight config output

What kind of change does this PR introduce? (check at least one)

[x] Bugfix
[ ] Feature
[ ] Code style update
[ ] Refactor
[ ] Docs
[ ] Underlying tools
[ ] Other, please describe:

Does this PR introduce a breaking change? (check one)

[ ] Yes
[x] No

Other information:
    vue inspect > output.js

{
  mode: 'production',
  context: 'D:\\Project\\vue\\vue-config-demo',
  devtool: 'source-map',
  node: {
    setImmediate: false,

   // ......

The output of utf-16 by default will produce unintelligible code.

+1, vue inspect > webpack.dev.js is not readable ...

highlight config output is useful, why remove it?

  "resolutions": {
    "cli-highlight": "2.1.4"
  },

works
@fz6m  @sodatea

https://github.com/felixfbecker/cli-highlight/commit/73847058ba1094a39fde416a081c95c761475104
it breaks vue inspect

Sorry for the inconvenience, auto-detected color support should be respected in v2.1.9 https://github.com/felixfbecker/cli-highlight/commit/988d209a9b008662a8b2677ab4e632550d4cd27b

Thanks! Close it, since it has been solved in cli-highlight v2.1.9 with the help of @felixfbecker .


Could you upload your paper in the git repository first ?

Sorry. We plan to release our code in December.

the paper, not code.

Sorry. We plan to release our code in December.

the paper, not code.

Sorry. We plan to release our code in December.

the paper, not code.
You can find the paper from https://aclanthology.org/2021.emnlp-main.287.pdf
But now it is 12.29, December is disappearing（doge

December

December？


⚠ ClamAV has degraded performance

In 3541433, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 448 ms

Resolved: ClamAV performance has improved in 0e7eead.


Use proper mmap_allocator for TFLite

When BUILD_WITH_MMAP is true,
mmap_allocator_disabled.cc should be excluded

@googlebot I signed it!

@googlebot  I fixed it.


Syntax error - missing '}' when using createTask

Hi
Im trying to run the createTask API, and I kept hitting a syntax error (missing a closing bracket). I found that this issue was fixed when I added a ',' to the references section after the 'type'
Original Code
const newTask = {
	            name: "Test task from taskJS", //required, max len: 512
	            description: "N/A", //optional, max len: 4096
	            endpoint: endpoints,
	            references: { //optional
	                  "reference name": { // string, max len: 4096
	                    type: "URL" //required, currently only "URL" is supported as a reference type,
	                    value: "https://www.amazon.com" //required, string, max len: 4096
	                  }
	                }
};

============================
Implemented change
const newTask = {
	            name: "Test task from taskJS", //required, max len: 512
	            description: "N/A", //optional, max len: 4096
	            endpoint: endpoints,
	            references: { //optional
	                  "reference name": { // string, max len: 4096
	                    type: "URL", //required, currently only "URL" is supported as a reference type,
	                    value: "https://www.amazon.com" //required, string, max len: 4096
	                  }
	                }
};

============================
Please let me know if this correct solution, or if the original was correct and I possibly missed something else in my code.
Thanks

That is correct solution, it was just a typo in documentation. Thanks for pointing out to that, I've updated Readme file.


Fix error log when loading issues caused by a xorm bug

Before this PR, when rows.Close, xorm always complained sql: no rows, that has been fixed on go-xorm/xorm#1334. This PR will fix that wrong error log.
And this will upgrade xorm, mssql, mysql packages

Codecov Report

Merging #7271 into master will decrease coverage by <.01%.
The diff coverage is 7.69%.

@@            Coverage Diff             @@
##           master    #7271      +/-   ##
==========================================
- Coverage   41.17%   41.17%   -0.01%
==========================================
  Files         464      464
  Lines       62771    62761      -10
==========================================
- Hits        25846    25839       -7
+ Misses      33537    33528       -9
- Partials     3388     3394       +6

Impacted Files
Coverage Δ

models/models.go
57.5% <ø> (ø)
:arrow_up:

models/review.go
53.08% <ø> (ø)
:arrow_up:

models/issue_tracked_time.go
67.56% <ø> (ø)
:arrow_up:

models/migrations/v38.go
0% <ø> (ø)
:arrow_up:

models/repo_list.go
73.09% <ø> (ø)
:arrow_up:

models/org.go
69.12% <ø> (ø)
:arrow_up:

models/issue_comment.go
47.59% <ø> (ø)
:arrow_up:

models/migrations/v78.go
0% <ø> (ø)
:arrow_up:

models/log.go
41.86% <ø> (ø)
:arrow_up:

models/repo_unit.go
64.91% <ø> (ø)
:arrow_up:

... and 18 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 baefea3...b7b2d67. Read the comment docs.


Evaluate a generated SVG Icon

There is no discussion group for this package, so please allow me to post this here for feedback.
I have an Icon generator tool that I point at a folder with a thousand SVG icons. I take the following steps.

Read each SVG file in as a string
String replace RegExp(r'fill="#[0-9a-fA-F]{6}"') with fill="currentColor" (our design tool does not output currentColor as a fill parameter)
Use ScalableImage.fromSvgString() to convert the SVG string to a ScalableImage
Base64 encode the si.toSIBytes() to a String
Use mustache to generate an Icon component and embed the encoded ScalableImage

My mustache template will produce output like the following.
import 'dart:convert';

import 'package:flutter/widgets.dart';
import 'package:jovial_svg/jovial_svg.dart';

const _siEncoded = 'sLAeBwAA...MzM3AI8=';
final _siBytes = base64.decode(_siEncoded);
final _si = ScalableImage.fromSIBytes(_siBytes);

/*
 * Original SVG
 * <svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
 * <g clip-path="url(#clip0_126_18931)">
 * <path d="M4.7166 10.7169V9.43377C3.82911 ... 5.03738 4.30127Z" fill="currentColor"/>
 * </g>
 * <defs>
 * <clipPath id="clip0_126_18931">
 * <rect width="12" height="12" fill="white"/>
 * </clipPath>
 * </defs>
 * </svg>
 *
*/
class BiotechOutlinedIcon extends StatelessWidget {
  const BiotechOutlinedIcon({
    super.key,
    this.width,
    this.height,
    this.alignment,
    this.background,
    this.clip,
    this.color,
  });

  final Alignment? alignment;
  final Color? background;
  final Color? color;
  final bool? clip;
  final double? width;
  final double? height;

  @override
  Widget build(BuildContext context) {
    final si = (color != null) ? _si.modifyCurrentColor(color!) : _si;

    return DecoratedBox(
      key: key,
      decoration: BoxDecoration(
        color: background,
      ),
      child: SizedBox(
        height: height ?? 24,
        width: width ?? 24,
        child: ScalableImageWidget(
          si: si,
          alignment: alignment ?? Alignment.center,
          clip: clip ?? true,
          fit: BoxFit.contain,
        ),
      ),
    );
  }
}

The reason I chose this approach is that we have thousands of icons in our catalog, and I did not want to treat the SVG files as assets. Assets are not tree-shaken when included in our applications, so even if the resulting native binary only uses a few icons, they pay the penalty of binding all of the asset files which increases the final binary by megabytes of unused assets.
There are issues with the way this package is distributed which makes writing a Dart CLI tool difficult. There is a package dependency on dart:ui which means this will not run as a Dart CLI. Instead, I have to run the generator as a Flutter test which allows me to still run "like" a CLI, and have dart:ui included. I think it would be much more convenient to package the encoding/decoding of the Jovial format so there is no dependency on the widget that displays it, or at least the dart:ui package.
I have a few questions

Is the widget as performant as I can make it? I may replace the nested DecoratedBox/SizedBox with a Container if the performance test shows a benefit.
Is there a better way to serialize the ScalableImage? Utf8List is available, but I didn't come up with a convenient way to export the Utf8List into a string that I can embed in my mustache template. I know there is some overhead induced by having to base64 decode the string, but I am assuming it is minimal compared to render time.

Is there a reasonable place to have a discussion group?  Generally speaking, I haven't seen discussion groups for Flutter packages, but I also haven't really looked!
Why aren't you just generating the binary file with svg_to_si?  You seem to have re-written the command line tool in a way that drags in dart:ui dependencies!  svg_to_si gives you the same thing as toSiBytes in a file; from there it's straightforward to write a simple command-line tool to read that file, a encode it however you want.
About performance, "it depends."  That's mostly a matter of standard optimization techniques.  Like, caching the pixmap rendering can make things a lot faster under the right circumstances; under the wrong circumstances it can add extra overhead.

This GitHub repository has a "Discussions" tab that you can enable. Here is Riverpod's discussions as a sample.
svg_to_si only outputs to a file, and DataOutputSink is not a class I can extend. I need to output to some type of encoding that I can package within the component, and not as an asset. If you wrote to a Sink interface, I could provide my own implementation backed by a StringBuffer or an in-memory sink.

Why would you want to extend DataOutputSink, given that its constructor already takes a List<int> where they bytes get sent?  I'm not sure why you think it can't be extended -- it's not final -- but that's moot anyway.  https://pub.dev/documentation/jovial_misc/latest/io_utils/DataOutputSink-class.html
Or, you could use the existing command-line too to send stuff to a temporary file.  This is part of your build process, right?  Making temporary files is probably the more normal thing to do in a build.  But if you want to save a tiny bit of launching overhead (and writing to a RAM disk) in your build, using DataOutputSink to write to a byte array in Dart is fine too.

Thanks for the tip about "discussions."  It turns out there's a checkbox that enables that down in the github settings.


Order features returned from features/search by genomic coordinates

Somehow this got missed in the original implementation.

Done in a6fafa6


Does it work in Delphi 2007?

Hi, trying to install package in Dephi 2007 (Version 11.0.2627.5503), cause all my project is here and I can't change IDE.
Well, trying D7 package, get this

trying D2010 package, get this

Is there any way to install your components in Delphi 2007? If not, could you add one more package for Delphi 2007?

Did you manage to install it in delphi 2007?


How to get autogpt logs in callback function?

After I run AutoGPT.fromLLMAndTools(...) autogpt.run, this data will be automatically printed out on my terminal.
{     "thoughts": {         "text": "...",         "reasoning": "...",         "plan": "...",         "criticism": "...",         "speak": "..."     },     "command": {         "name": "...",         "args": {             "input": "..."         }     } }
How do I get this data in the callback function?

Here are the steps of the integration for custom callbacks:

Extend the node_modules/langchain/dist/experimental/autogpt/agent.d.ts file with a RunCallbacks interface and update the run function inside the AutoGPT class as follows:

interface RunCallbacks {
    /**
     * Callback for intermediate steps of the run process.
     * @param step The current step or intermediate result.
     */
    onStep?: (step: any) => void; // Adjust the 'any' type based on the actual step structure

    /**
     * Callback for handling errors that occur during the run.
     * @param error The error encountered during the run.
     */
    onError?: (error: Error) => void;

    /**
     * Callback for when the run process completes.
     * @param result The final result of the run, or undefined if the maximum number of iterations was reached without a result.
     */
    onComplete?: (result: string | undefined) => void;
}

/** ... */

export declare class AutoGPT {

/** ... */

/**
     * Runs the AI with a given set of goals.
     * @param goals An array of strings representing the goals.
     * @param callbacks An optional object containing callback functions for different stages of the run process.
     * @returns A string representing the result of the run or undefined if the maximum number of iterations is reached without a result.
     */
    run(goals: string[], callbacks?: RunCallbacks): Promise<string | undefined>;
}

Update the run function and implement your customization in the node_modules/langchain/dist/experimental/autogpt/agent.js and/or agent.cjs files like the following example:

/**
 * Runs the AI with a given set of goals.
 * @param {Array<string>} goals An array of strings representing the goals.
 * @param {Function} onStep Callback for each intermediate step or reply.
 * @param {Function} onError Callback for handling errors.
 * @param {Function} onComplete Callback when execution completes successfully.
 * @returns {Promise<string|undefined>} A string representing the result of the run or undefined if the maximum number of iterations is reached without a result.
 */
async run(goals, callbacks = {}) {
    const user_input = "Determine which next command to use, and respond using the format specified above:";
    let loopCount = 0;
    while (loopCount < this.maxIterations) {
        loopCount += 1;
        let assistantReply;
        try {
            const response = await this.chain.call({
                goals,
                user_input,
                memory: this.memory,
                messages: this.fullMessageHistory,
            });
            assistantReply = response.text;
            // Invoke onStep callback with the assistant reply
            if (callbacks.onStep) callbacks.onStep(assistantReply);
        } catch (error) {
            console.error("Error calling chain:", error);
            if (callbacks.onError) callbacks.onError(error);
            return; // Exit the function on error
        }
        console.log(assistantReply);
        this.fullMessageHistory.push({type: 'Human', content: user_input});
        this.fullMessageHistory.push({type: 'AI', content: assistantReply});
        const action = await this.outputParser.parse(assistantReply);
        const tools = this.tools.reduce((acc, tool) => ({ ...acc, [tool.name]: tool }), {});
        let result;
        try {
            if (action.name === "FINISH_NAME") {
                if (callbacks.onComplete) callbacks.onComplete(action.args.response);
                return action.args.response;
            }
            if (action.name in tools) {
                const tool = tools[action.name];
                const observation = await tool.call(action.args);
                result = `Command ${tool.name} returned: ${observation}`;
            } else if (action.name === "ERROR") {
                result = `Error: ${action.args}. `;
            } else {
                result = `Unknown command '${action.name}'. Please refer to the 'COMMANDS' list for available commands and only respond in the specified JSON format.`;
            }
        } catch (e) {
            console.error("Error executing action:", e);
            if (callbacks.onError) callbacks.onError(e);
            return; // Exit the function on error
        }
        let memoryToAdd = `Assistant Reply: ${assistantReply}\nResult: ${result} `;
        if (this.feedbackTool) {
            try {
                const feedback = await this.feedbackTool.call("Input: ");
                if (feedback === "q" || feedback === "stop") {
                    console.log("EXITING");
                    if (callbacks.onComplete) callbacks.onComplete("EXITING");
                    return "EXITING";
                }
                memoryToAdd += feedback;
            } catch (e) {
                console.error("Error getting feedback:", e);
                if (callbacks.onError) callbacks.onError(e);
                return; // Exit the function on error
            }
        }
        const documents = await this.textSplitter.createDocuments([memoryToAdd]);
        await this.memory.addDocuments(documents);
        this.fullMessageHistory.push({type: 'System', content: result});
    }
    if (onComplete) onComplete(undefined);
    return undefined;
}

Clear your application's cache, ensure that to load the updated files and then run the application. After these changes you'll be able to pass callbacks like in the following example below.

Example usage
// Prepare a promise to handle the AutoGPT run process
        const promise = new Promise((resolve, reject) => {
            this.autogpt.run([input], {
                onStep: (step) => {
                    console.log(`Intermediate Step: ${JSON.stringify(step)}`);
                },
                onComplete: (result) => {
                    console.log('AutoGPT run completed successfully.');
                    resolve(result); // Resolve the promise with the final result
                },
                onError: (error) => {
                    console.error('An error occurred during the AutoGPT run:', error);
                    reject(error); // Reject the promise on error
                }
            });
        });

Note
This approach is for demonstration purpose. Customized output parsers needs to be created for different use-cases.


Export additionalType as additional rdfs:types ("@type") in JSON-LD

It would be useful if we could convert additionalType values into list additions to "@type" in the JSON-LD export of CE nodes. That is, ensure that the value for "@type" is a list that contains both the CE node's type, and any additionalTypes.
(as discussed with @alastair)

@alastair, this should be relatively easy to implement for all types. Are you planning to add this feature (it is currently marked in the deliverable as not implemented)

I'm going to add it to the annotation json-ld serialiser, but it could also be added to the generic one. I'll add it to my list.


Query: whether can reduce the size for the wal files.

I only configured below to have only  1 file for wal and snap. however, it has one temp file as below indicates and totally have 128M.  How can I reduce this size space ? is exist any configuration to define the size? thank you.
ETCD_MAX_SNAPSHOTS="1"
ETCD_MAX_WALS="1"
total 125008
drwx------ 2 root root     4096 Mar 12 09:51 .
drwx------ 4 root root     4096 Mar 12 09:51 ..
-rw------- 1 root root 64000000 Mar 12 10:37<PHONE_NUMBER>000000-0000000000000000.wal
-rw------- 1 root root 64000000 Mar 12 09:51 0.tmp
The used version:
etcdctl --version
etcdctl version: 3.1.4
API version: 2

This is intentional. We preallocate WAL stores to eliminate latencies for metadata updates or block allocations.

Thanks, @gyuho ,  is it possible to configure to be smaller size value if we only support very small cluster and not so frequently DB operations?

Hi
@Gyuho
I change to the definition from 64M to 16M and do compile, looks not have much impact, also I change the snapshot_count to 1000 during testing for one etcd instance.
Could you help confirm any impact will be? thanks.

@nenzhang We won't support configurable preallocation.


Added tutorial on DetectionOutputAdapter

@shaydeci thanks for the suggestion, in fact while adding an example output a bug in OutputAdapter was discovered and fixed. You can't have too many unit tests.


refactor(source): separate key and payload accessor building

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
Refactor the parser building process to make it easy to support new ddl.
Basic idea is to build parser for each protocol and create corresponding key/value accessor based on key/value encoding.
Currently only debezium/maxwell parser is added. And the design does not cover the case where some protocol/format (raw json, canal) generate multiple accessors from one payload.

Checklist

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
[ ] All checks passed in ./risedev check (or alias, ./risedev c)
[ ] My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)

[ ] My PR contains critical fixes that are necessary to be merged into the latest release. (Please check out the details)

Documentation

[ ] My PR contains user-facing changes.

Click here for Documentation
Types of user-facing changes
Please keep the types that apply to your changes, and remove the others.

Installation and deployment
Connector (sources & sinks)
SQL commands, functions, and operators
RisingWave cluster configuration changes
Other (please specify in the release note below)

Release note

Btw before merging let's run the micro-bench locally to make sure no regression for json_parser. (And hopefully some improvement).

Seems like this refactor has yield great performance benefits nearly 10%:
Warning: Unable to complete 100 samples in 5.0s. You may wish to increase target time to 30.5s, or reduce sample count to 10.
json_parser             time:   [298.97 ms 299.67 ms 300.37 ms]
                        change: [-8.6225% -8.3358% -8.0394%] (p = 0.00 < 0.05)
                        Performance has improved.

Benchmarking bench_debezium_json_parser_create: Warming up for 3.0000 s
Warning: Unable to complete 100 samples in 5.0s. You may wish to increase target time to 63.3s, or reduce sample count to 10.
bench_debezium_json_parser_create
                        time:   [616.23 ms 622.55 ms 632.46 ms]
                        change: [-9.4594% -8.5881% -6.6473%] (p = 0.00 < 0.05)
                        Performance has improved.

Benchmarking bench_debezium_json_parser_read: Warming up for 3.0000 s
Warning: Unable to complete 100 samples in 5.0s. You may wish to increase target time to 63.2s, or reduce sample count to 10.
bench_debezium_json_parser_read
                        time:   [611.73 ms 619.23 ms 629.99 ms]
                        change: [-14.240% -11.895% -9.5421%] (p = 0.00 < 0.05)
                        Performance has improved.

Benchmarking bench_debezium_json_parser_update: Warming up for 3.0000 s
Warning: Unable to complete 100 samples in 5.0s. You may wish to increase target time to 72.2s, or reduce sample count to 10.
bench_debezium_json_parser_update
                        time:   [680.35 ms 682.67 ms 685.44 ms]
                        change: [-8.3744% -7.9996% -7.5575%] (p = 0.00 < 0.05)
                        Performance has improved.

Benchmarking bench_debezium_json_parser_delete: Warming up for 3.0000 s
Warning: Unable to complete 100 samples in 5.0s. You may wish to increase target time to 63.9s, or reduce sample count to 10.
bench_debezium_json_parser_delete
                        time:   [615.25 ms 617.87 ms 621.31 ms]
                        change: [-9.8719% -9.4440% -8.7988%] (p = 0.00 < 0.05)
                        Performance has improved.

Great work!


Adjust GA builds and change paths in tests to use */ga images

Description
Changes proposed in this pull request:

from builds GA remove context: . because it is default
adjust paths in tests to use */ga images

Related issue(s)

#1033

/retest

/retest

/retest

/test pre-serverless-runtimes-java17-jvm-alpha-build

/test pre-serverless-runtimes-nodejs-v20-build


Render 'hiccups' when deleting obstacles

When in normal gameplay, as an obstacle goes off the screen, the entire process looks as if it gets 'stuck' at a point for a split second. Causing the 'hiccup' style of view. This will also get worse when the particle system for the sports car is displayed.

This was fixed v1.2


improve dev env

@JorisBassle @EdwardKerckhof state of this?
To-do? Done? Can it be removed entirely?


Create Jenkinsfile

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@Karthikdgowda Thanks for the PR. Can you describe the purpose for the PR, what is solves, etc? It's hard to understand if we should add this to the tutorial or not, what it impacts, etc.

Closing the PR for now


How to save the Pix2Pix model

Hi, your project is very impressive, however, I have met an problem to save the model weight of Pix2Pix. How can I save the model to avoid re-trianning the network every time.

I solve the problem and answer the question by myself (:
add:
self.combined.save(filepath="model.h5")
ModelCheckpoint(filepath="model.hdf5", verbose=1,save_best_only=True)


allow traffic fraction to change in mid-flight

This is regarding issue #191 and allows to change the traffic fraction during a running experiment. It also changes the way the save method works so that needs a careful review. Only when a experiment is new it is allowed to change everything, such as the variations. When the variations change and the experiment calls the save() method it should not have any effect and protect itself against invalid data in the database. If this would happen, the variations would be added twice.

I'm not sure what conflicts github has with this PR, but happy to fix it if someone points me at them.

@nickveenhof reviewing now. Thank you.

Any update here? Thanks! :)

+1

Yup. This looks good to ship. I'm merge/tag/etc. tomorrow

Sorry to bother you, can we get this merged please?

Yes. Sorry. I'll get a new version tagged today or tomorrow.


Frequent "ptr was null" crashes with no discernable reason

Even in trace mode, there are no messages of interest right before this happens.
Waybar v0.9.12
The error message:
terminate called after throwing an instance of 'std::runtime_error'
  what():  ptr was null

Might be a hardware issue, closing.


Why there is no rebar analyze or rebar dialyzer?

I just want to use dialyzer to analyze my code!
version
rebar 2.1.0-pre 17 20150406_143650 git 2.1.0-pre-171-gcd55176
rebar -c
clean                                Clean
compile                              Compile sources
escriptize                           Generate escript archive
create      template= [var=foo,...]  Create skel based on template and vars
create-app  [appid=myapp]            Create simple app skel
create-node [nodeid=mynode]          Create simple node skel
list-templates                       List available templates
doc                                  Generate Erlang program documentation
check-deps                           Display to be fetched dependencies
get-deps                             Fetch dependencies
update-deps                          Update fetched dependencies
delete-deps                          Delete fetched dependencies
list-deps                            List dependencies
generate    [dump_spec=0/1]          Build release with reltool
overlay                              Run reltool overlays only
generate-upgrade  previous_release=path  Build an upgrade package
generate-appups   previous_release=path  Generate appup files
eunit       [suites=foo]             Run eunit tests in foo.erl and
test/foo_tests.erl
[suites=foo] [tests=bar] Run specific eunit tests [first test name
starting with 'bar' in foo.erl and
test/foo_tests.erl]
[tests=bar]              For every existing suite, run the first
test whose name starts with bar and, if
no such test exists, run the test whose
name starts with bar in the suite's
_tests module
ct          [suites=] [case=]        Run common_test suites
qc                                   Test QuickCheck properties
xref                                 Run cross reference analysis
help                                 Show the program options
version                              Show version information

2.1.0 is old. 2.6.0 is the current version and it contains dialyzer again.


Cannot exit sleep mode when Awake is activated

Microsoft PowerToys version
0.47.1
Running as admin

[X] Yes

Area(s) with issue?
Awake
Steps to reproduce
Since I left the Awake function permanently activated, when I manually put my PC to sleep, I cannot get it out of sleep mode, when I open the cover, the screen remains black and the only solution to solve this problem is to perform a forced shutdown of the PC which makes me lose my work every time especially when it is not saved
✔ Expected Behavior
No response
❌ Actual Behavior
Awake works fine as long as I do not put my PC in sleep mode I have no problem
Other Software
No response

cc: @dend

Latest version is 51.1, can you confirm if the behavior is the same?

Latest version is 51.1, can you confirm if the behavior is the same?

Resolved ! Thanks !


Can not run the evaluation code due to missing of PerAct checkpoint

Hi authors,
I am trying to run the evaluation code using your instruction:
python eval.py rlbench.tasks="[<your task>]" rlbench.headless=False method.model_path=<path to rk-diffuser ckpt> framework.logdir=<path to peract ckpt dir>
As my guessing, <path to rk-diffuser ckpt> refers to the checkpoint of the RK-Diffuser model, which locates in the snapshots folder and <path to peract ckpt dir> refers to the checkpoint in the PerAct. Nevertheless, it seemed not working and I encoutered the following error:

Error executing job with overrides: ['rlbench.tasks=[reach_target]', 'rlbench.headless=False', 'method.model_path=snapshots/low_level/reach_target/2024-08-28_17:36:56/model_10000.pt', 'framework.logdir=saved_models/ckpts/multi/PERACT_BC/seed5']
Traceback (most recent call last):
File "/home/XXX/hdp/eval.py", line 253, in main
raise Exception("Missing seed%d/config.yaml" % start_seed)
Exception: Missing seed0/config.yaml
Set the environment variable HYDRA_FULL_ERROR=1 for a complete stack trace.

Of course, I have double checked to ensure the train_config_path exists as a relative path. I also tried to change to absolute path but still, it did not work.
I hope you can help me with this issue. Thank you very much in advance!
Best regards,
An Vuong

Oh, never mind, just change the relative path to the absolute path works for me.


badge for Visual Studio Marketplace is not working

Are you experiencing an issue with...

[x] shields.io

:beetle: Description
Both download and installation badge for visual studio marketplace are not working, here is the screen shot

This is happened for Visual Studio Extension: BigEgg.PowerMode.
:link:
Installs: https://img.shields.io/visual-studio-marketplace/i/BigEgg.PowerMode
Downloads: https://img.shields.io/visual-studio-marketplace/d/BigEgg.PowerMode
:bulb: Possible Solution
Don't know

The detailed error here is
"results[0].extensions[0].versions[0].version" with value "0.7" fails to match the required pattern: /^(\d+\.\d+\.\d+)(\.\d+)?$/

looks like our regex is too strict, but interestingly the VSCode manifest spec says version should be a semver https://code.visualstudio.com/api/references/extension-manifest (which 0.7 isn't). Surprised this is the first time we've seen this if the marketplace doesn't enforce the spec though :thinking:

Thanks for the explanation. Let me update mine version.

Seem like the regex keep this on purpose. Here is the reference: #1704

Thanks for the extra context.
Are we actually gaining anything from this input validation? AFAIK we're not actually relying on the version being in a certain format (for example, we're not splitting the version out into major/minor/patch and the doing something with the patch component). Assuming all we are doing is shoving the value of versions[0] on a badge, we we're not losing anything if we just make the input validation Joi.string(), right?
Sure its weird that MS say the version string should be in a certain format and then don't apply that constraint, but if the user can publish a plugin with the version number 0.7 then the expected behaviour is that we're going to serve a version badge that says 0.7 on it..

Are we actually gaining anything from this input validation?

That question starts heading down a more philosophical path, and also circles back to some previous conversations around what exactly the purpose of the schema validation is and how loose/strict they should be.
It's come up enough times that I think it may warrant revisiting the topic in an offline conversation with the core team, and my preference would be that we codify the decision and enforce it consistently.
There's an easy fix for the user here, and precedent with semi-recent action on our part in a similar non-compliant version scenario, so I don't see any blocking issues with leaving the schema as is.

what exactly the purpose of the schema validation is and how loose/strict they should be

Good question. Lets start off by reviewing the history, just so we all understand how we got here.. Apologies if I'm just re-stating things we all already know, but lets start from a common baseline. Rewind a few years, and we used to frequently render badges like

due to poor error handling.  Introducing service tests led us to identify a lot of this and we added a whole pile of manual error handling to guard against it i.e: doing the equivalent of
if (obj.version === undefined) {
  throw new InvalidResponse()
}
render(obj.version)

instead of
render(obj.version)

(except at that time we didn't have standard exceptions or a render() function, but.. you know what I mean). This was better for users, but we were duplicating the same checks over and over, throwing the same error responses in hundreds of places, and we still missed stuff sometimes (we couldn't log error cases to sentry, for example - we just rendered broken badges).
So.. approach number 3: Joi schemas. Every API response we accept, we validate it against a schema to make sure its the right shape. If we're going to use a value, we check it exists. If we need to multiply it by something, we check its a number. If we're going to call .split() on it, we make sure its a string. This allows us to make the validation declarative, centralise/DRY-up the rendering of error responses and log uncaught errors to sentry (which allows us to patch up the things we've missed over time). It works pretty well.
IMO validation on the input data only really needs to be strict enough that we don't have to manually implement guard conditions.
e.g: version: Joi.string().required() is there so we can write
render(obj.version)

instead of
if (obj.version === undefined) {
  throw new InvalidResponse()
}
render(obj.version)

to not render  and defer throwing the error to Joi.
This is slightly different from the validation we do under test which is sometimes maybe necessarily a bit stricter to assert our own code is correct (on top of assertions about the input data).
What we shouldn't be using input validation for is to say to users "your version number isn't good enough".

my preference would be that we codify the decision and enforce it consistently

I think trying apply one rule across all services is a losing move for us. Registries are different. APIs are different. Sometimes people build weird APIs. Sometimes (get this, right) people build APIs that do one thing and write docs that say something slightly different 😮 Dealing with the messy reality of real-world APIs is part of the reason why we need input validation.
That said, there are probably some useful principles we can agree on and apply in an appropriately context-sensitive way. Some I would suggest are:

Our definition of "valid" should be no stricter than the upstream service's definition of "valid". Perhaps to phrase this in RFC-like language: "our validation MAY be less strict than the upstream service but MUST NOT be more strict than the upstream service". Exactly where in that grey are we fall is going to be determined by other badge/service-specific criteria/requirements.
If theory (docs) and practice (real-world API responses) conflict, real-world outputs take precedence over documented behaviour. e.g: if the docs say version is a semver but we learn that there are real-world packages where the version number is 0.3b or <IP_ADDRESS> then we should accept those values in preference to enforcing the documented API behaviour.
Shields is descriptive ("the registry says your package version is 0.7, therefore your package version is 0.7") rather than prescriptive ("you're doing versioning wrong - lol"). We reflect the established norms of the communities we serve. If it's good enough for the upstream, it's good enough for us.

Maybe there's some overlap between 1 and 3 there. Either way, happy to engage in wider discussion about working out what the full list should be (I suspect that is something that has to be seeded and then evolve over time though). I'll copy & paste some of this stuff over to a discussion thread where we can talk about it more.
In this particular situation, my strong preference is we loosen the validation. The user isn't doing versioning wrong - we're doing badges wrong. Sure we can say "Ha. I found a case where Microsoft's docs say one thing and their API response says something different - therefore I win", but if the prize is we have to respond to this same support request again in future, we're not exactly #WinningAtLife are we? :D

Have opened https://github.com/badges/shields/discussions/5619 to discuss.

Thanks for opening a separate issue (I was going to request the same) and the detailed write up. Haven't had a chance to digest it yet but am looking forward to the discussion. There's been different and yes some times conflicting prescriptions on this topic, and it was one of the more confusing, and occasionally frustrating, things for me when I first started contributing to Shields.
Ultimately I don't care all that much about what the decided outcome is, but really want to avoid contributors receiving different messages depending on which maintainer is reviewing (and what may be on that maintainer's mind that day), or which docs/existing badges are used as a reference.

Just an FYI, I had updated the version for my extension.


Add new column for new encyrption format

Relates to #3315
Add new JSONB columns to session store and access tokens table which will be used to store encrypted data along with its metadata (algorithm type, key, salt).
Summary
Provide a brief overview of the changes and the issue being addressed.
Explain the rationale and any background necessary for understanding the changes.
List dependencies required by this change, if any.
Fixes #(related issue)
Change Type
Mark the type of change your PR introduces:

[ ] Bug fix (resolves an issue without affecting existing features)
[x] Feature (adds new functionality without breaking changes)
[ ] Breaking change (may impact existing functionalities or require documentation updates)
[ ] Documentation (updates or additions to documentation)
[ ] Refactoring or test improvements (no bug fixes or new functionality)

Testing
Outline how the changes were tested, including steps to reproduce and any relevant configurations.
Attach screenshots if helpful.
Review Checklist:

[x] Reviewed my own code for quality and clarity.
[x] Added comments to complex or tricky code sections.
[ ] Updated any affected documentation.
[ ] Included tests that validate the fix or feature.
[ ] Checked that related changes are merged.

coverage: 49.151% (+0.02%) from 49.135%
when pulling a9d2ac0b0ae3cee5696af5e4bf57b8404c5fa622 on encrypted-data-column
into daccbc12e364e2d407d56b87a13f7bb24cbdb074 on main.


Add new state to ShowBlocked of ApplicationFilter

Logic seems OK.
What about unit tests?

We never tested filters which use for making predicates. I'll search for how to check the predicate condition.
Could you approve this PR and leave unit tests like my tech debt? Because front needs these changes.

We never tested filters which use for making predicates. I'll search for how to check the predicate condition. Could you approve this PR and leave unit tests like my tech debt? Because front needs these changes.

As changes were done in private predicate building method you should check not the method, but data returned by service. I.e. results of ApplicationService.GetAll() called with different filter.ShowBlocked values on known collection.
I've checked the existing unit-tests and see 8 tests for mentioned ApplicationService.GetAll(). I belive it's really simple task to add another 3 tests for different ShowBlocked values.
I doubt that front requires code without unit-tests. Please never use this as an excuse.

Approved, though disappointed

I added tests

I added tests

Thanks, man


How can I make these tasks in the for loop execute concurrently with WorkerPool?

demo code:
use rustyscript::{
    worker::{DefaultWorker, DefaultWorkerQuery, WorkerPool},
    Error,
};

fn main() -> Result<(), Error> {
    let mut pool: WorkerPool<DefaultWorker> = WorkerPool::new(Default::default(), 2).unwrap();
    for _ in 0..10 {
        let res = pool
            .send_and_await(DefaultWorkerQuery::Eval(
                "(function () {
                let sum = 0;
                for (let i = 0; i <<PHONE_NUMBER>; i++) {
                    sum += 1;
                }
                console.log(sum)
                })();"
                    .to_owned(),
            ))
            .unwrap();
        match res {
            rustyscript::worker::DefaultWorkerResponse::Value(value) => {
                println!("====> res: {:?}", value);
            }
            rustyscript::worker::DefaultWorkerResponse::ModuleId(_) => todo!(),
            rustyscript::worker::DefaultWorkerResponse::Ok(_) => todo!(),
            rustyscript::worker::DefaultWorkerResponse::Error(_) => todo!(),
        }
    }
    Ok(())
}

I have modified the interface to simplify your use-case and added a relevant example; does this work for you?
https://github.com/rscarson/rustyscript/blob/master/examples/worker_pool.rs

I have modified the interface to simplify your use-case and added a relevant example: https://github.com/rscarson/rustyscript/blob/master/examples/worker_pool.rs
Please let me know if you have further questions

What I want do is starting a axum server, this server can run js code by WorkerPool concurrently


boost version incompatibility

After installing hdfs3 in a clean conda environment with these commands
conda create --name hdfs3test python=3
source activate hdfs3
conda install -c dask hdfs3

I get the following error after trying import hdfs3 in the Python interpreter:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/work/analytics2/analytics/python/envs/hdfs3test/lib/python3.5/site-packages/hdfs3/__init__.py", line 1, in <module>
  from .core import HDFileSystem, HDFile
File "/work/analytics2/analytics/python/envs/hdfs3test/lib/python3.5/site-packages/hdfs3/core.py", line 12, in <module>
  from .lib import _lib
File "/work/analytics2/analytics/python/envs/hdfs3test/lib/python3.5/site-packages/hdfs3/lib.py", line 11, in <module>
  _lib = ct.cdll.LoadLibrary('libhdfs3.so')
File "/work/analytics2/analytics/python/envs/hdfs3test/lib/python3.5/ctypes/__init__.py", line 425, in LoadLibrary
  return self._dlltype(name)
File "/work/analytics2/analytics/python/envs/hdfs3test/lib/python3.5/ctypes/__init__.py", line 347, in __init__
  self._handle = _dlopen(self._name, mode)
OSError: libboost_thread.so.1.57.0: cannot open shared object file: No such file or directory

Downgrading the installed version of boost with conda install boost=1.57 seems to fix the issue.

Thanks for reporting this! I'm looking into this now.

+1 to get this one fixed

Thx @DGrady for the workaround tip

I've rebuilt libhdfs3 with boost 1.60 and reuploaded to the dask channel on anaconda.org. I also pinned boost 1.60 to the libhdfs3 conda package, so this won't happen again if boost is updated in Anaconda in the future.
Things should now work with the usual:
conda install hdfs3 -c dask

Thanks again @DGrady and @hsaputra for reporting! Please reopen if you have any issues.

Thanks for the quick fix!


Feature Request: Call custom URL before and after a step

It would be nice to call custom URLs before and / or after JLineup run steps. This would enable you to create and remove test data through custom controllers in your 'JLineupped' service.

Its in Release 4.2.0: https://github.com/otto-de/jlineup/blob/master/docs/CONFIGURATION.md#setup-paths and https://github.com/otto-de/jlineup/blob/master/docs/CONFIGURATION.md#cleanup-paths


Serenity/JS 3.0 - Keep legacy 2.x documentation accessible

I wonder, if it would it be possible to keep the 2.x docs online for a while, once there is a 3.x release?

⚠ It would be nice, but we'd need to find a sensible way to do it. ESDoc has been quite a challenge to get it to work with a mono-repo, so I'd rather not touch it again unless I really had to (to be fair, it works great for simple, single-module projects, for which it's been designed).
I'm actually considering migrating the website to another static website generator like Docusaurus or something similar, but that's a project on its own. I'd rather do it after 3.0
Originally posted by @jan-molak in https://github.com/serenity-js/serenity-js/issues/805#issuecomment-1073366654

@jan-molak I wonder if it would be possible to generate & copy the docs from both branches, the upcoming 2.x and the new main. Maybe the old page could accessible unter serenity-js.org/v2/….  To keep all internal links working you would probably have to adjust the root path somewhere.

If there's a lot of interest in having access to v2 docs we could publish them at v2.serenity-js.org 🤔

Hmm, I've seen this more as a transitional thing. Seems a lot of people are still using 2.x (what is the current stable version). And given the breaking changes, migrating an existing project will take it's resources. So this maybe a parallel task and testing with 2.x has to go on next to a migration to 3.x project. Question about 2.x and 3.x may come up and maybe someone wants to compare the versions.
I always found that a good approach:

https://webdriver.io/versions
https://jasmine.github.io/pages/docs_home.html

Not sure, if even all users of Serenity/JS are aware, that there is an upcoming version or even if anyone, who uses 3.x-rc is aware, that 3.x is not the current stable version at all.
But yeah, for me it depends on how much effort it would bey to have a v2.serenity-js.org. I think it would be good to have thinks like https://serenity-js.org/handbook/demo.html available at 2.x (at least as long as their is no 3.x version of the demo video).

But yeah, for me it depends on how much effort it would be to have a v2.serenity-js.org

It might not be that hard, actually.
I think we could create https://github.com/serenity-js/serenity-js-v2 repo and push the current master in there, plus configure GitHub pages to publish to v2.serenity-js.org.

Your attempts to switch to Docusaurus in #1197 would provide a versioning feature as well. But as they write on their page, you should think twice before using it.
So, the much simpler the approach, the much better, I assume.

Closing as Serenity/JS v2 and v3 use completely different documentation infrastructure and supporting API docs for the no longer maintained v2 turned out to be too much effort. Maybe we could consider that for v4 as I'm not planning to switch away from Docusaurus anytime soon 😄


fix: ru translation of migration message

Fixed ru translation of migration message (origin from English version)

Thank you @frolvanya and @itegulov !


Fix hide follow button

Intro
Fixes #135
Problem
Previously, follow button hiding soon unintentionally. thanks gif report @hmemcpy!

Fix Result

VIdeo
https://www.dropbox.com/s/nxl9zzhao1dtmaa/after.mp4?dl=0
How To Fix
The cause was @azdanov figure outed. https://github.com/sindresorhus/refined-twitter/issues/135#issuecomment-414117657
If Window.innerHeight < 720, tweet button hiding.
video
https://www.dropbox.com/s/zt48e4s9u2uzys2/720.mp4?dl=0
That just time, .is-locked class added to P.rofileCanopy
As a result addition of .is-locked triggered apply position: fixed to follow button container.
Therefore rechange position: fixed to position: relative, the issue solved.
Also, I removed mini profile card at behind.
Video
https://www.dropbox.com/s/lr69quo7q88kqa4/hide-mini-card.mp4?dl=0
Fin.
Thanks your review😀

Thanks for fixing this @ryota-murakami. Hopefully we can get this merged soon.


Retrieve the default namespace when running in cluster

It's documented to be in /var/run/secrets/kubernetes.io/serviceaccount/namespace.
Perhaps this could be surfaced somehow?

Yeah, that should be pretty easy to implement. Unfortunately, my internet has disappeared. So marking as help wanted for now until it's restored.


Honour redirect_to query parameter

Closes #3089
Complements 3380c946e12e53368f28a2b7285c7bad0c1746dc

This check should be added in the same place as https://github.com/strk/gogs/blob/1b2ae57fbca75146069b6252b89ec0d043d3d8ba/routers/user/auth.go#L80 and do check for both of methods to determine if there is a redirect_to. URL query parameter has higher priority than cookie.

On August 12, 2016 6:51:17 PM CEST, "无闻"<EMAIL_ADDRESS>wrote:

This check should be added in the same place as
https://github.com/strk/gogs/blob/1b2ae57fbca75146069b6252b89ec0d043d3d8ba/routers/user/auth.go#L80
and do check for both of methods to determine if there is a
redirect_to. URL query parameter has higher priority than cookie.

In my tests that block is never reached
--strk;
Sent from device with lame keyboard. Please excuse my brevity.

This does not change the fact we should put check together.

I'm not sure aba2d59 does what you ask

@Unknwon could you please review the current code to see if your "pu check togheter" request is satisfied ? I think it is...

Tested and worked without second part.


Better tokenization functions.

feat: deprecate cleaners. Expose tokenize as a top level function that supports arbitrary nuc -> token mappings. ci: update pre-commit hooks.
feat: decode_tokens to also support arbitrary nuc -> token mappings.
feat: bump version.
feat: bump version.

tag v0.1.12


Stop format changes

This change adds a thread format specifically for the stop printing, since then format you want for "thread list" is different from the thread header you want in stop printing.

@swift-ci please test

@swift-ci Please test


fix broken links due to updating OPTIGA trust M to version 5.0.0

By creating this pull request you agree to the terms in CONTRIBUTING.md.
https://github.com/Infineon/.github/blob/master/CONTRIBUTING.md
--- DO NOT DELETE ANYTHING ABOVE THIS LINE ---
CONTRIBUTING.md also tells you what to expect in the PR process.
Description
Provide the information we need to review your PR. What problem does the pull request solve? "Bug fix" is not a good description.
Related Issue
Related Issue : https://github.com/Infineon/azure-esp32-optiga-trust/issues/1

@ying-css @RaymWong  any comments on this pull request, or can i merge ?


Switch from working with "Team: Foo" labels to "Product Area: Bar"

This is for https://github.com/getsentry/team-ospo/issues/126 which is for https://github.com/getsentry/team-ospo/issues/90.
It's a lot. I'm not going to say it's not a lot.

Looks like this PR will break the hourly triage notifications that exist today, since Team: * labels still exist. With that said, is there a plan to clean the existing database so that the Team: * labels no longer exist as entries in label_to_channel? Will channels that Product Owners subscribe to be created before the team labels are switched to product area labels on GH issues?

Find all Slack "Team: Foo" subscriptions and set up corresponding "Product Area: Foo" subscriptions might be a bit difficult without access to the database 🤔. Probably could ask ops to run a query for this?


Calendar syncing options

I currently use etar and simple calendar on my pixel 7, with etesync used on the backend to sync between devices.
Is this app written specifically for the Google calendar app or will it work standard AOSP system, like com.android.calendar and com.android.providers.calendar?

It uses the android.provider.CalendarContract class. I am not sure if this is something specific to Google Calendar, but I know it works with other Calendar apps running on OxygenOS.
The only problem that I saw was on a couple Samsung phones. I'm not sure what app they were using, but the Data/Time format was slightly different (the seconds for a repeating events was missing). I fixed it to prevent a crash.
So, I cannot answer for sure if it will work with your calendar app. If it does not, I can try to fix it you are able to provide information on the problem.
Regards

Actually, I just tried it with Etar, and it is working fine:

That's perfect! Thank you a ton. I'll be shopping for a gshock watch 👍


Getting this error: Abort trap: 6 (in target 'iOSPhotoEditor' from project 'Pods')

On Xcode 13.3, running in Debug is fine but got an error when archiving

.

having same issue, any solution?

having same issue, any solution?

it's not a high priority in my project so I removed that library

If anyone is running in this error, the solution is to change UI_USER_INTERFACE_IDIOM() to UIDevice.current.userInterfaceIdiom on Cropview.swift

@JeCaiced0 you saved me, thanks!


Refactor type hint parsing for exposed functions

#751 reveals some major problems regarding type hint parsing for exposed functions.

[x] There are comments and workarounds for Python 3.7, which is not necessary
[x] inspect should be used in all cases
[x] Union is very limited and doesn't work / the |-operator should work (as issued in #718)
[x] The code generally has to be refactored to current PEP8/Python guidelines

Type hint parsing should become part of the new Method-class introduced by #800

Fixed by #837


findTextInFiles fails on redundant glob

Refs https://github.com/microsoft/vscode/issues/104648#issuecomment-675242945
There's an outfile pattern that we compile to new RelativePattern('<workspaceFolder>', 'dist/**/*.js, dist/*.js'). This fails to match anything, but new RelativePattern('<workspaceFolder>', 'dist/**/*.js') works.
Complete options:
findTextInFiles(
  { pattern: 'sourceMappingURL', isCaseSensitive: true },
  {
    include: {
      base: "E:\\TestBed\\vscode-ts-debug-failure",
      pattern: "dist/**/*.js, dist/*.js",
    },
    exclude: "",
    useDefaultExcludes: false,
    useIgnoreFiles: false,
    useGlobalIgnoreFiles: false,
    followSymlinks: true,
    beforeContext: 0,
    afterContext: 0,
    previewOptions: {
      charsPerLine:<PHONE_NUMBER>740991,
      matchLines: 1,
    },
  },
)

Should it be wrapped in {}?

We use new RelativePattern -- this was just the result of me copying the options directly from the debugger https://github.com/microsoft/vscode-js-debug/blob/7dd5107733e7982888c129279c06cf13da6c4f93/src/common/sourceMaps/codeSearchStrategy.ts#L86

Yeah

Ok. Is that something we should do for all patterns? That is, change
forceForwardSlashes(files.patterns.filter(p => !p.startsWith('!')).join(', ')),

to
'{'+ forceForwardSlashes(files.patterns.filter(p => !p.startsWith('!')).join(', ')) + '}'

I believe so

Yea, it works in general, just not this case. I'll give it a shot.

It seems like ripgrep doesn't like that, {**/*.js, out/*.js} and {**/*.js} don't match any files

This also seems to fail if the pattern base is a workspace folder and the pattern navigates outside of it (e.g. ../foo/**/*.js)


Fix -l to list tests without cwl-runner

It is a backport of https://github.com/common-workflow-language/cwl-v1.2/pull/174.

Thanks!


Create Snappy package / AppImage

Just out of curiousity, this may be a neat way to distribute MIRTK for Ubuntu users without the restriction of dependency versions available as deb packages for the respective Ubuntu release. For Ubuntu 14/16, this isn't really a problem with the current MIRTK source code, though, as these come with recent enough packages via apt-get. Would still be interesting to look into this new Snapcrafting...
https://developer.ubuntu.com/en/desktop/
https://developer.ubuntu.com/en/snappy/build-apps/

...or AppImageKit. Linus describes it like this:

It not only allows for a project to create a complex Linux application (...) that works on multiple distributions, you don't even need to really even install it. Download a file, mark it executable, and run it.
It comes with its own little embedded compressed ISO filesystem that gets mounted and contains all the required libraries.

@probonopd AppImageKit seems cool and would be available for a broader user base. Both, Snappy packages and AppImages remind me of OS X bundles... glad this is coming to Linux now.

Seems Snap packages can be installed and run on various distributions now/soon as well... http://arstechnica.com/information-technology/2016/06/goodbye-apt-and-yum-ubuntus-snap-apps-are-coming-to-distros-everywhere/

It is very early days to tell TBH. We have several of this so-called "universal" packages (AppImage, Flatpak, Snap) competing for a share of the Linux cake, but these projects are still a bit young to make an informed choice I believe. Nonetheless, these technologies should be able to coexist.
Regarding the article you linked, Ars is basically rephrasing Canonical PR and adds a somewhat click-baity title to it. I prefer this comparatively less biased and more factual article from the register.

Sure, but IMHO, given the fact that Snappy is supported natively by Ubuntu and marketed by them, and given that the de-facto standard home user (and research user, our main stackholder) Linux distro of choice being Ubuntu, I would rather bet on Snappy rather than any of these other much less known solutions to come out on top.

@probonopd Thanks for the tip! AppImage has convinced me and using the created file the same as we would use the mirtk Python wrapper script (by dropping the .AppImage) extension, is pretty cool. See #610 description.


Tutorial for Geometry and Appearances has a bad link

Link to tutorial
Part in question:

Appearances also define the full render state, which controls the GPU’s state when the primitive is drawn.

The link leads to:
<Error> AccessDenied <Message>Access Denied</Message> <RequestId>C0AEA9E050CF9290</RequestId> <HostId> +E/U9AcdwLfrjK3Xja06PWieibs4wJLF/bdfMNbgXnu9RAw5MziWyYPBEpMBN5hoCYse6P5dj6c= </HostId> </Error>

Thanks @thinkpadder1!  It looks like we forgot to remove this link when render state was made private.
I've updated the page, it should be updated on the website soon.


[Workflow] Change Activity Id Delimiter

Description
Workflows have been using <workflow_id>#<task_id> to identify an activity and this is used to persist it as well in actor state store.
This PR intends to change the separator between <workflow_id> and <task_id> to underscore(_) from #.
Issue reference

Please reference the issue this PR will close: #6156
Checklist
Please make sure you've  completed the relevant tasks for this PR, out of the following list:

[ ] Code compiles correctly
[ ] Created/updated tests
[ ] Unit tests passing
[ ] End-to-end tests passing
[ ] Extended the documentation / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]
[ ] Specification has been updated / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]
[ ] Provided sample for the feature / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]

@DeepanshuA Do any of the fields be delimited here, contain user input values? And if so, is _ not going to be considered a valid input?

No, it doesn't contain user input values. An example of the key is "orderapp||dapr.internal.default.orderapp.activity||1a5b08135b7f418db8d18e42dc4d8966_3||activityState"
Here, 1a5b08135b7f418db8d18e42dc4d8966 as workflow id is system generated and so is the task id. Earlier, they were separated by #, but now by _

@DeepanshuA Do any of the fields be delimited here, contain user input values? And if so, is _ not going to be considered a valid input?

No, it doesn't contain user input values. An example of the key is "orderapp||dapr.internal.default.orderapp.activity||1a5b08135b7f418db8d18e42dc4d8966_3||activityState"
Here, 1a5b08135b7f418db8d18e42dc4d8966 as workflow id is system generated and so is the task id. Earlier, they were separated by #, but now by _

Correcting my earlier response, so this instance_id seems to be currently set by DTFx language specific libraries.
But, a user app can send them directly in API call as well, if they decide to call the APIs themselves, instead of using dapr sdk.
cc @cgillum Please correct me if I have quoted wrong in my updated statement

@DeepanshuA

But, a user app can send them directly in API call as well, if they decide to call the APIs themselves, instead of using dapr sdk.

In a previous PR, we actually added workflow ID validation, which requires that all workflow IDs only contain alpha-numeric characters, dashes, and underscores. I think we should be sufficiently safe.


Tweak compilation cache for SQL queries

we had QueryUnit.cachable set to False for sql-over-edgedb-protocol,
we were using the hash of the whole NormalizedSource as cache key, which includes extracted constants, which defeats (most) of the purpose of caching

TODO:

tests that cache is actually being hit

Commits:

fix NormalizedSource.variables
compute cache_key from pg_query_fingerprint
Revert "compute cache_key from pg_query_fingerprint"
pgsql Source.cache_key
more tests

Any idea what's going on with the test failure?

We were rejecting multi-statement queries in execute, after trying to fetch type descriptors from PostgreSQL.


Using 'import' in MicroPython in the browser

Hi again,
I am looking into how one might get 'import' to work in MicroPython in the browser, also without fetching it from a server.
For example, say I have the following python files to be used in MicroPython
main.py
import test
print(test.value)

test.py
value = 10

the expected output is '10'.
On a filesystem, this project would look like

ProjectDir

main.py
test.py

Now, say a user makes both of these files on some kind of text editor on a webpage and there is access to the contents of each file through javascript. How could 'main.py' know about 'test.py' in the browser?
I know of BrowserFS (https://github.com/jvilk/BrowserFS) but am not entirely sure how this would work with rp2040js.
I have seen ways of overriding the MicroPython importer to use provided modules to fetch the contents of files from a URL (https://github.com/micropython/micropython/issues/4972#issuecomment-626111144). I suppose that may be used in some way by using a Blob (https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL) to provide a client-side URL for the file contents to be fetched from in the MicroPython script (?)
In any case, I am looking for insight on how to get 'import' working in python scripts with MicroPythin using this library in browser

Just tested 'file = open("data.txt", "w")' to try and create a file in MicroPytho, it returns Erno 19 which means filesystem not mounted, as expected

I think I'm starting to figure it out, at least where to maybe start. Looks like the simulator uses littlefs.wasm: https://www.npmjs.com/package/littlefs

Good observation - MicroPython indeed uses LittleFS.
On the Raspberry Pi Pico, I found out the it works this way:

The file system starts at offset 0xa0000 of the flash
The block size is 4096
The amount of blocks is 352

You can also deduce these values from the MicroPython source code:

Filesystem size
Filesystem offset
Block size (and also here)

OK, using that information I've tried to write a text file to flash after the uf2 in this way
text.txt
This is text

Trying to load text file to flash
  // Try transferring text file to flash
  const textRes = await fetch("test.txt");
  const textBuffer = await textRes.arrayBuffer();
  const textData = new Uint8Array(textBuffer);

  var flashIndex = 0;

  while (flashIndex + 256 < textData.length + 256) {
    const dataBlock = textData.slice(flashIndex, flashIndex + 256);
    // rp2040.flash.set(dataBlock, 0xa00000000 + flashIndex);
    for(var i=0; i > dataBlock.length; i++){
      rp2040.writeUint8(0xa00000000 + flashIndex + i, dataBlock[i]);
    }
    flashIndex = flashIndex + 256;
  }

That is just writing the contents of the file to flash, I don't expect MicroPython will be able to tell this is a file without some extra (unknown to me) metadata/formatting.
Running
import os
print(os.listdir('/'))

outputs
[]

My main points of confusing are

What API in rp2040js should I use to write the contents of the file to flash? Using rp2040.flash.set(dataBlock, 0xa00000000 + flashIndex); will give an out of bounds error but rp2040.writeUint8(0xa00000000 + flashIndex + i, dataBlock[i]); doesn't
What data should accompany the file contents for it to show up in MicroPython?

I am aware there is extra complexity that I may be missing when it comes to ensuring data is written to flash in a correct manner (blocks, fragmentation, etc)
I'm curious how littlefs.wasm could be used

That is just writing the contents of the file to flash, I don't expect MicroPython will be able to tell this is a file without some extra (unknown to me) metadata/formatting.

That's exactly where littlefs comes into play. I haven't had a change to properly release the code for littlefs-wasm, but here's a quick code example showing how to use it to create a simple filesystem:
const createLittleFS = require('littefs');

const BLOCK_COUNT = 352;
const BLOCK_SIZE = 4096;

const flash = new Uint8Array(BLOCK_COUNT * BLOCK_SIZE);

(async function () {
  const littlefs = await createLittleFS();
  function flashRead(cfg, block, off, buffer, size) {
    const start = block * BLOCK_SIZE + off;
    littlefs.HEAPU8.set(flash.subarray(start, start + size), buffer);
    return 0;
  }
  function flashProg(cfg, block, off, buffer, size) {
    const start = block * BLOCK_SIZE + off;
    flash.set(littlefs.HEAPU8.subarray(buffer, buffer + size), start);
    return 0;
  }
  function flashErase(cfg, block) {
    const start = block * BLOCK_SIZE;
    flash.fill(0xff, start, start + BLOCK_SIZE);
    return 0;
  }
  const read = littlefs.addFunction(flashRead, 'iiiiii');
  const prog = littlefs.addFunction(flashProg, 'iiiiii');
  const erase = littlefs.addFunction(flashErase, 'iii');
  const sync = littlefs.addFunction(() => 0, 'ii');

  const writeFile = littlefs.cwrap(
    'lfs_write_file',
    ['number'],
    ['number', 'string', 'string', 'number']
  );

  const config = littlefs._new_lfs_config(read, prog, erase, sync, BLOCK_COUNT, BLOCK_SIZE);
  const lfs = littlefs._new_lfs();
  littlefs._lfs_format(lfs, config);
  littlefs._lfs_mount(lfs, config);
  const fileData = 'This is text\n';
  writeFile(lfs, 'test.txt', fileData, fileData.length);
  littlefs._lfs_unmount(lfs);
  littlefs._free(lfs);
  littlefs._free(config);
})();

when this code finishes running, the flash array will contain the raw content of the filesystem, which you can then copy to location 0xa0000 of the simulated Pi Pico flash.

(You can get the littlefs package from npm)

That all worked! I had to use browserify to get it to work in the browser


Feature: Expose the labels attribute on the resource via a variable

Description
Add support to allow the labels to be configured on the secret.
This function is currently available via the resource in the IBM provider for terraform, but is not exposed in the module
New or affected modules
terraform-ibm-iam-serviceid-apikey-secrets-manager

By submitting this issue, you agree to follow our Code of Conduct

Addressed in #124, released in v1.1.0.


Adding a custom page/redirect for the server url

Is your feature request related to a problem? Please describe.
As of now the server URL when accessed shows a summy message. Server is Running:))
Describe the solution you'd like
I would like to construct an HTML page and make It a bit attractive. I plan to write intermediate CSS and make it as per the theme of the project
Describe alternatives you've considered
Another way of solving this can be to send a JSON back or actually redirect to the frontend URL.

Discussed on Discord, not required


Regex instead of characters

Hey! I found this tool quite useful for creating DFAs in the browser, way better than drawing them on paper. But it would be much more useful if it could except regex instead of single character for transitions. Like the DFA I require (for a lexical analyzer) treats all digits the same, hence it would be nice to have regex like [0-9] or [a-z|A-Z] on the transition.

Thanks for your interest and the suggestion.  I'll have to think carefully about whether 1. this is feasible in the current design and 2.  I want to expand the project's scope to support it.

Currently transitions are just a lookup table. So they're really simple to set, change, apply, serialize, and deserialize.  Allowing character groups would require touching all of those areas across all 3 FSA types.  Implementing syntactic sugar for specifying multiple characters for the same transition would be a much simpler change than handling character ranges, but still touches all those areas.

I built this project as an educational tool for students learning about FSAs--specifically using the notation from Michael Sipser's "Introduction to the Theory of Computation".  Deviating from the syntax used in Sipser's book would reduce its educational value as students would need to reconcile the differences at a time when they're least capable of doing so (because they're still learning how these all work).

I've decided that I'm not going to implement character groups.  But do feel free to fork the project and implement it in your own branch.


How to set alias path for files in monaco editor?

monaco-editor version: 0.2.0
Browser: chrome
OS: mac
Playground code that reproduces the issue:
monaco.languages.typescript.javascriptDefaults.setCompilerOptions({
    allowNonTsExtensions: true,
    allowJs: true,
    target: 99,
    paths: {
        "@/*": ["./"]
    },
    baseUrl: './',
})

const fooModel = monaco.editor.createModel(
    `export const a = {name: 'abc'}`,
    'javascript',
    monaco.Uri.parse('file:///foo.js')
);

const mainModel = monaco.editor.createModel(
    `import {a}  from '@/foo';\n`,
    'javascript',
    monaco.Uri.parse('file:///main.js')
);

monaco.editor.create(document.getElementById('container'), {model:mainModel});

import {a}  from '@/foo' no syntax tips for a
Expect
a has IntelliSense

What we do on the typescript playground for this is set updateExtraLibs on either
monaco.languages.typescript.javascriptDefaults or monaco.languages.typescript.typescriptDefaults for any file which isn't in the editor.

What we do on the typescript playground for this is use addExtraLib on either
monaco.languages.typescript.javascriptDefaults or monaco.languages.typescript.typescriptDefaults for any file which isn't in the editor.

i use addExtraLib is working
But I want to jump to the definition for  across files

As far as I know, multi file workflow is not supported in these workers.

To get the peek definition working across files you add a model and register that file as an extra lib. I've never used path aliases but here is a working example for the general functionality (do a peek definition on the next method):
const lib = `declare class Facts {
	/**
	 * Returns the next fact
	 *
	 * [Online documentation](http://www.google.de)
	 */
	static next(): string;
}`;

const uri = monaco.Uri.file("dir/facts.d.ts");
monaco.languages.typescript.javascriptDefaults.addExtraLib(lib, uri.toString());
monaco.editor.createModel(lib, "typescript", uri);

monaco.editor.create(document.getElementById("container"), {
    value: `class Chuck {
    greet() {
        return Facts.next();
    }
}`,
    language: "javascript"
});

Is there any reason why this doesn't work?
(addExtraLib doesn't solve my case since I'll need to monitor every single change in the other user files and transpile it, effectively doing the compiler job in the main thread instead of the worker)
I've been digging around monaco-typescript and it looks like the config (with paths) is passed to the ts-compiler but for some reason it has no effect on the worker behaviour.

@matanlb If I change your sample to use  import {a}  from './foo';, I get intellisense for a. So I believe there is something about the paths configuration that does not work.

I would like to know how you changed it because I also want to use this kind of relative path. In Monaco, for the time being, I refer to the playground example. It can only be in the form of the entry library, only the name and no path.

I would like to know how you changed it because I also want to use this kind of relative path. In Monaco, for the time being, I refer to the playground example. It can only be in the form of the entry library, only the name and no path.

Is there any solution to this problem? Up to now, the latest version still does not support the paths parameter of tsconfig.

Is there any solution to this problem? Up to now, the latest version still does not support the paths parameter of tsconfig.

hi, do you have a solution?

Using addExtraLib works only on initial load - if I change the viewed file to a different file and go back to the file with the alias'd import it no longer loads the types correctly.
I'm not transpiling the file contents and passing it as a raw TS to the addExtraLib fn.


The web interface requires a responsive design

I doubt that users will often look at https://tatin.dev with a mobile; the usual visitor is a programmer needing a package, and they will use a monitor.
However, using responsive design is also important for getting appropriately ranked.


[Important] The current website is about to enter maintenance mode to aid with v3 launch

TL;DR; At the end of Jan 2021, all tracks will enter v3 staging mode. Updates will no longer sync with the current live website, but instead sync with the staging website. The Crystal section of the v3 repo will be extracted and PR'd into this track (if appropriate). Further issues and information will follow over the coming weeks to prepare Crystal for the launch of v3.
Over the last 12 months, we've all been hard at work developing Exercism v3. Up until this point, all v3 tracks have been under development in a single repository - the v3 repository. As we get close to launch, it is time for us to explode that monorepo back into the normal track repos. Therefore, at the end of this month (January 2021), we will copy the v3 tracks contents from the v3 repository back to the corresponding track repositories.
As v3 tracks are structured differently than v2 tracks, the current (v2) website cannot work with v3 tracks. To prevent the v2 website from breaking, we'll disable syncing between track repositories and the website. This will effectively put v2 in maintenance mode, where any changes in the track repos won't show up on the website. This will then allow tracks to work on preparing for the Exercism v3 launch.
Where possible, we will script the changes needed to prepare tracks for v3. For any manual changes that need to be happening, we will create issues on the corresponding track repositories. We will be providing lots of extra information about this in the coming weeks.
We're really excited to enter the next phase of building Exercism v3, and to finally get it launched! 🙂

As of today, the website has entered maintenance mode.

As of today, the website has entered maintenance mode.

With Exercism v3 just being released, tracks are no longer in maintenance mode and are active again.
This means that changes made to this track will once again show on the website.
Thanks for being patient with us and enjoy Exercism v3!


ci: fix release pipeline

Checklist

[x] Ensure PR title matches the conventional commits format.

CodiumAI Agent Commands
As required run the following CodiumAI Agent commands:

Request PR review using @CodiumAI-Agent /review (and if required, request an incremental update with @CodiumAI-Agent /review -i)
Request PR improvement suggestions with @CodiumAI-Agent /improve --extended
Request PR update using @CodiumAI-Agent /describe
Request adding missing documentation @CodiumAI-Agent /add_docs
Add custom labels based on content @CodiumAI-Agent /generate_labels
Find similar issues @CodiumAI-Agent /similar_issue

@CodiumAI-Agent /describe


[stable/rabbitmq-ha] Corrected mix-up of default MQTT / Stomp ports

As per https://github.com/kubernetes/charts/blob/master/stable/rabbitmq-ha/templates/statefulset.yaml#L58 - the default ports are accidentally switched, leaving users confused about out of the box behaviour.
@etiennetremel

Did the necessary signing, @k8s-ci-robot why don't you give the legislation CI another attempt? 👋

I have found the CLA is very picky. You have to make sure the email you set when committing is the same one you use on github and the CLA.

Already fixed in #5051.


Blog app - Views

Use preprocessed HTML file with embedded Ruby code.
Use layouts and templates for shared content.
Implement the design from the sneak peek wireframes.
Do some styling

Thank you, I will apply the changes


Upgrade compileSdkVersion to 34 to fix "lStar not found" build issue

Goal
This change is necessary to resolve an issue during the build process caused by an outdated compileSdkVersion. Specifically, the error occurred while verifying Android resources:
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ‘:bugsnag_flutter:verifyReleaseResources’.
> A failure occurred while executing com.android.build.gradle.tasks.VerifyLibraryResourcesTask$Action
   > Android resource linking failed
     ERROR: /Users/gdelataillade/dev/evolum_app/build/bugsnag_flutter/intermediates/merged_res/release/mergeReleaseResources/values/values.xml:194: AAPT: error: resource android:attr/lStar not found.

Design
The approach used was to upgrade the compileSdkVersion from 31 to 34 in the Bugsnag Flutter dependency. This fixes the missing resource issue, as the newer SDK version supports the required attributes.
Changeset
Updated compileSdkVersion from 31 to 34 in the bugsnag_flutter module to align with the latest Android SDK compatibility.
Testing
The change was tested by rebuilding the Flutter project using the new SDK version. I use the following environment:
Flutter (Channel stable, 3.24.3, on macOS 15.0.1 24A348 darwin-arm64)

After the update, the build was successful, and no further errors related to resource linking were encountered.

Hi @gdelataillade
The missing lStar attribute was added in SDK 31: https://developer.android.com/reference/android/R.attr#lStar
We are currently upgrading our compileSdkVersion from 29 to 31: https://github.com/bugsnag/bugsnag-flutter/pull/265
This should resolve the issue you were seeing, and we will make sure to update this thread when the new release is available.

Hi @gdelataillade,
Just wanted to let you know that we have now upgraded the Android compileSdkVersion from 29 to 31 in v4.1.0 of bugsnag-flutter, so we are going to close this PR out now. Please let us know if you have any questions.

Thanks


Remove rdd package imports from examples

Fixes #556
Extends commits in #581

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/mango-prb/1013/

Closing in favor of https://github.com/bigdatagenomics/mango/pull/584