fix: replace imgur to s3 for various files without conflict

(cherry picked from commit 4af8ae9cc4301abb299a0bc91e959f64c4be62d7)

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] All the files I changed are in the same world language (for example: only English changes, or only Chinese changes, etc.)
[x] My changes do not use shortened URLs or affiliate links.

Reference #36007

I will take this one.

I would suggest instead of hard-coding https://cdn-media-1.freecodecamp.org that it come from the .env file or something similar. Then it will never need to be changed in code again. It also makes it possible for the code to be used by different orgs, and to make it easier for the site to be used offline, which @QuincyLarson mentioned as a goal.

@raisedadead I was planning on reviewing the other 5 PRs which replace imgur images, but I will now wait until you respond to @tchaffee's question above.  Just let me know what you want to do.   If you do go the IMAGE_BASE_URL route, you will have to rewrite anytestString regex to use a RegExp constructor to recreate all of the current regex expressions.  So you go from a testString which currently looks like this:
    testString: 'assert(code.match(/background:\s*?url\(\s*("|"|)https:\/\/cdn-media-1\.freecodecamp\.org\/imgr\/MJAkxbh\.png\1\s*\)/gi));`

to something that looks like this:
    testString: 'const escapedUrl = IMAGE_BASE_URL.replace(/([/.])/g, '\\$1'); const regex = new RegExp("background:\\s\*\?url\\(\\s\*\("|"|\)" + escapedUrl + "imgr\/MJAkxbh\\.png\\1\\s\*\\)", "gi"); assert(code.match(regex));'

If there are many testString using these urls, then I would recommend using a package called escape-string-regexp and then you use the library to help avoid some of these complex regex's which would be required to craft.
Either way, this makes things a bit more complicated for these challenge files unless there is an easier approach I am missing.

Regarding the guide markdown, I think we'd need to create a remark plugin to insert IMAGE_BASE_URL.  I would be happy to try and write one, if that's the plan, but it may take a little while.

I agree with Todd here, although these PRs should go in first and the .env updates can come in a later PR to keep the contribution going. So, @RandellDawson  please go ahead and QA the PRs.
We should also put up a separate issue that can be deferred until later about the .env setup. This is because, it would also cover a lot of the other hard coded URLs and values.

@raisedadead I have approved this PR already.  Do you want at least two approvals before merge?  If so, I will notify the other active mods.

@raisedadead I have approved this PR already.  Do you want at least two approvals before merge?  If so, I will notify the other active mods.

I double checked this. it should be good to go.

Thank you for your contribution to the page! 👍
We're happy to accept these changes, and look forward to future contributions. 📝


Fixed an issue which caused UnknownReference error

Fixed an issue which caused UnknownReference error
if one uses _node when querying sys.shards while
there are unassigned shards in the cluster

changes are missing, but ok since we do not have a release

ack


flexbuffer missing license

Hi,
One of the dependent module flexbuffer has missing license.  In corporate environment, we are unable to use ioredis due to missing license in dependent module. Is there any work around?

My apologies for not reviewing the license before using it. I've sent an email to the contributors of the flexbuffer module.
I'll replace the flexbuffer module if there's no response.

I tweeted both the contributors, should hopefully get their attention 👍

License has been added, MIT.

Thank you very much. Thank was really quick.


Do not autocreate directory for new user/orgs (#4828)

Fixes #4828
Solves problem when user is created externally and his directory doesn't belong to same user as gitea is run under. Any new repository operations (create, fork, clone, transfer to new owner) autocreates this directory when it's needed with os.MkdirAll function (it was in the code before, only ChangeUserName function was assuming user dir does exist, now it just ignores if not).

Codecov Report

Merging #4849 into master will decrease coverage by <.01%.
The diff coverage is 25%.

@@            Coverage Diff             @@
##           master    #4849      +/-   ##
==========================================
- Coverage   37.22%   37.22%   -0.01%
==========================================
  Files         305      305
  Lines       45037    45035       -2
==========================================
- Hits        16766    16765       -1
+ Misses      25836    25835       -1
  Partials     2435     2435

Impacted Files
Coverage Δ

models/org.go
68.6% <ø> (+0.42%)
:arrow_up:

models/user.go
44.09% <25%> (-0.05%)
:arrow_down:

modules/process/manager.go
76.81% <0%> (-4.35%)
:arrow_down:

models/repo_list.go
57.71% <0%> (+1.34%)
:arrow_up:

Continue to review full report at Codecov.

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


Deliver Task doesnt complete

Hello
we have on our server the issue,that the Deliver Task as last stage or as middle stage doesnt complete the quest or the stage. In the console is no error apearring. Sometimes is the Deliver Task working but only for short time.
Please help, we need this feature as soon as possible.
Best regards
ModdyLP

My Server Version Minecraft Spigot 1.8.8
Citizens build 1267
Quest build q92
Which information do you need also?

Post your quests.yml

here the quest.yml
I have seen some yaml syntax mistakes, i correct these errors and now i will try it but you can take a look if you see something else.
http://pastebin.com/5d5C1ANc

Looks alright to me. If you're still having the problem even with fixing those syntax mistakes, then post back here and say which quest in particular isn't working.

It hadn't fixed after i correct the mistakes. http://pastebin.com/7b0uLP6D
Here the quests they dont work:
custom12
custom2
custom9
custom10
custom1
One delivery quest is working:
custom15
I hope you have a solution for me, becouse i think it is really weird.

I looked at each of them and I don't see anything particularly wrong. Unfortunately, there's not much else I can do without a console error. Perhaps you could backup then delete those quests, just to see if that solves the problem?

I had delete all quests for a while but that didnt solve the issue. It is really Bad that this didnt work becouse we had member they want to use it. :(


[JW8-12349] Add ability to modify on event props

This PR will...

Make on props updatable
add const file
clean up test output/unused functions

Why is this Pull Request needed?
improvement
Are there any points in the code the reviewer needs to double check?
see comment/ general check
Are there any Pull Requests open in other repos which need to be merged with this?
nah
Addresses Issue(s):
JW8-12349

test this please

test this please

test this please

Would this also solve the issue stated in https://github.com/jwplayer/jwplayer-react/issues/3 ?

@m4olivei Hey Matthew! Based on my reading of the issue, it looks like this should fix that. This will make it so that if any on events change, the event listeners will be updated for the player. May just need to do a retest when this gets merged in.


Missing translation

https://github.com/Novout/betterwrite/blob/24ca6eb089cd64150347a09365d08f8ae5c2c89f/packages/better-write-languages/src/en-US/editor.ts#L392-L395
Missing translation:
        title: 'Summary',
        type: 'Style',
        fontSize: 'Font Size',
        fontFamily: 'Font Family',

Resolved in v1.1.2


Unable to add storybook to Phoenix 1.7 rc 1

When I tried to add phx_live_storybook dependency to Phoenix 1.7 rc1, I got these compilation errors, along with few warnings.
warning: passing a string as a layout template in use options is deprecated, please pass an atom, such as :live instead of "live.html"
  (phoenix_live_view 0.18.3) lib/phoenix_live_view/utils.ex:154: Phoenix.LiveView.Utils.normalize_layout/2
  (phoenix_live_view 0.18.3) lib/phoenix_live_view.ex:493: Phoenix.LiveView."MACRO-__before_compile__"/2
  (elixir 1.14.0) src/elixir_dispatch.erl:224: :elixir_dispatch.expand_macro_fun/7
  (elixir 1.14.0) src/elixir_dispatch.erl:211: :elixir_dispatch.expand_require/6
  (elixir 1.14.0) src/elixir_dispatch.erl:135: :elixir_dispatch.dispatch_require/7
  (elixir 1.14.0) src/elixir_module.erl:398: :elixir_module.expand_callback/6

warning: passing a string as a layout template in use options is deprecated, please pass an atom, such as :live instead of "live.html"
  (phoenix_live_view 0.18.3) lib/phoenix_live_view/utils.ex:154: Phoenix.LiveView.Utils.normalize_layout/2
  (phoenix_live_view 0.18.3) lib/phoenix_live_view.ex:493: Phoenix.LiveView."MACRO-__before_compile__"/2
  (elixir 1.14.0) src/elixir_dispatch.erl:224: :elixir_dispatch.expand_macro_fun/7
  (elixir 1.14.0) src/elixir_dispatch.erl:211: :elixir_dispatch.expand_require/6
  (elixir 1.14.0) src/elixir_dispatch.erl:135: :elixir_dispatch.dispatch_require/7
  (elixir 1.14.0) src/elixir_module.erl:398: :elixir_module.expand_callback/6

== Compilation error in file lib/phx_live_storybook/live/error_view.ex ==
** (CompileError) lib/phx_live_storybook/live/error_view.ex:2: module Phoenix.View is not loaded and could not be found. This may be happening because the module you are trying to load directly or indirectly depends on the current module
    (elixir 1.14.0) expanding macro: Kernel.use/2
    lib/phx_live_storybook/live/error_view.ex:2: PhxLiveStorybook.ErrorView (module)
    expanding macro: PhxLiveStorybook.Web.__using__/1
    lib/phx_live_storybook/live/error_view.ex:2: PhxLiveStorybook.ErrorView (module)
    (elixir 1.14.0) expanding macro: Kernel.use/2
could not compile dependency :phx_live_storybook, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile phx_live_storybook", update it with "mix deps.update phx_live_storybook" or clean it with "mix deps.clean phx_live_storybook"

Extra informations:
Erlang/OTP 25 [erts-13.1.1] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit]
Elixir 1.14.0 (compiled with Erlang/OTP 25)

https://elixirforum.com/t/phoenix-1-7-0-rc-0-is-out/51625/64?u=derpycoder

Hey, did you try the main branch?
I think this has been solved in #170


[Regression]When getting env variable, it's also included double quote in the result.

When I tried to print the env variable from my CI, which its value was "true", it returned ""true"" instead.
It was working fine in 2.80.0. But after I updated fastlane to 2.87.0, without changing any env variables, it breaks.

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Issue Description
Complete output when running fastlane, including the stack trace and command used

[01:43:08]: FastlaneSwiftRunner project is up-to-date
[01:43:08]: $ xcodebuild -showBuildSettings -scheme FastlaneRunner -project ./fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj
[01:43:11]: Command timed out after 3 seconds on try 1 of 4, trying again with a 6 second timeout...
[01:43:17]: Command timed out after 6 seconds on try 2 of 4, trying again with a 12 second timeout...
[01:43:21]: $ set -o pipefail && xcodebuild -scheme FastlaneRunner -project ./fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj -destination 'generic/platform=macOS' | tee /Users/distiller/Library/Logs/gym/App-FastlaneRunner.log | xcpretty
[01:43:48]: $ ./fastlane/FastlaneRunner lane envTest > /dev/null
[01:43:48]: isCI: "true"
[01:43:48]: isCI.count: 6
[01:43:48]: fastlane.tools finished successfully 🎉

Environment

✅ fastlane environment ✅
Stack

Key
Value

OS
10.12.6

Ruby
2.3.5

Bundler?
true

Git
git version 2.14.3 (Apple Git-98)

Installation Source
~/project/vendor/bundle/ruby/2.3.0/bin/fastlane

Host
Mac OS X 10.12.6 (16G29)

Ruby Lib Dir
~/.rubies/ruby-2.3.5/lib

OpenSSL Version
OpenSSL 1.0.2m  2 Nov 2017

Is contained
false

Is homebrew
false

Is installed via Fabric.app
false

Xcode Path
/Applications/Xcode-9.2.app/Contents/Developer/

Xcode Version
9.2

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL
en_US.UTF-8
✅

LANGUAGE

fastlane files:
`./fastlane/Fastfile.swift`
// Customize this file, documentation can be found here:
// https://docs.fastlane.tools/
// All available actions: https://docs.fastlane.tools/actions
// can also be listed using the `fastlane actions` command

// Change the syntax highlighting to Swift
// All lines starting with // are ignored when running `fastlane`

// If you want to automatically update fastlane if a new version is available:
// updateFastlane()

import Foundation

class Fastfile: LaneFile
{
    // This is the minimum version number required.
    // Update this, if you use features of a newer version
    var fastlaneVersion: String { return "2.87.0" }

    func envTestLane()
    {
        let isCI = environmentVariable(get: "CI")

        puts(message: "isCI: \(isCI)")
        puts(message: "isCI.count: \(isCI.count)")
    }
}

No Appfile found
fastlane gems

Gem
Version
Update-Status

fastlane
2.87.0
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

did_you_mean
1.0.0

bundler
1.16.0

io-console
0.4.5

CFPropertyList
3.0.0

concurrent-ruby
1.0.5

i18n
0.9.5

minitest
5.11.3

thread_safe
0.3.6

tzinfo
1.2.5

activesupport
4.2.10

public_suffix
2.0.5

addressable
2.5.2

atomos
0.1.2

babosa
1.0.2

claide
1.0.2

fuzzy_match
2.0.4

nap
1.1.0

cocoapods-core
1.4.0

cocoapods-deintegrate
1.0.2

cocoapods-downloader
1.1.3

cocoapods-plugins
1.0.0

cocoapods-search
1.0.0

cocoapods-stats
1.0.0

netrc
0.11.0

cocoapods-trunk
1.3.0

cocoapods-try
1.1.0

colored2
3.1.2

escape
0.0.4

fourflusher
2.0.1

gh_inspector
1.1.3

molinillo
0.6.5

ruby-macho
1.1.0

nanaimo
0.2.4

xcodeproj
1.5.7

cocoapods
1.4.0

colored
1.2

highline
1.7.10

commander-fastlane
4.4.6

declarative
0.0.10

declarative-option
0.1.0

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20170404

dotenv
2.2.1

excon
0.61.0

multipart-post
2.0.0

faraday
0.14.0

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

faraday_middleware
0.12.2

fastimage
2.1.1

jwt
2.1.0

little-plugger
1.1.4

multi_json
1.13.1

logging
2.2.2

memoist
0.16.0

os
0.9.6

signet
0.8.1

googleauth
0.6.2

httpclient
2.8.3

mime-types-data
3.2016.0521

mime-types
3.1

uber
0.1.0

representable
3.0.4

retriable
3.1.1

google-api-client
0.13.6

json
2.1.0

mini_magick
4.5.1

multi_xml
0.6.0

plist
3.4.0

rubyzip
1.2.1

security
0.1.3

naturally
2.1.0

simctl
1.6.2

slack-notifier
2.3.2

terminal-notifier
1.8.0

unicode-display_width
1.3.0

terminal-table
1.8.0

tty-screen
0.6.4

tty-cursor
0.5.0

tty-spinner
0.8.0

word_wrap
1.0.0

rouge
2.0.7

xcpretty
0.2.8

xcpretty-travis-formatter
1.0.0

generated on: 2018-03-26

@mylifeasdog Created a PR for fixing this ^


Support arbitrary LSP server?

It looks like ALE is intended to involve into a full-fledged LSP client.
So why not support arbitrary executable that conforms with LSP protocol instead of ad-hoc linters supports? (Or do we already have this).

Yeah, ALE already does that. If you want to connect to any type of LSP server, see :help ale#linter#Define. The minimum amount of information you'll need is as follows.

An executable and command for the server for stdio connections OR an address for TCP connections.
A name for describing the "linter." (ALE's name for any program ALE runs or connects to for finding problems.)
lsp needs to be set to 'stdio' for stdio connections, or 'socket' for TCP socket connections.
project_root needs to be set to describe where the roots of projects are.

You can call the function to define new linters in your vimrc file, in other plugin files, or define linters in runtimepath in ale_linters/language/linter_name.vim. The best way to find examples is to look at ALE's codebase for the pre-defined linters.
The way ALE works is that it comes with as many pre-defined linters as possible, and then if you want anything else ALE doesn't support out of the box, you can add as many extra linters as you want.

The documentation is already pretty good, but after writing that I think it would be worth adding a section to the documentation which says pretty much that. I'll re-open this and tag it with the documentation label.

I'm in the same situation, I would like to add this javascript server to my config since it is not officially supported by Ale: https://www.npmjs.com/package/javascript-typescript-langserver

For what it's worth, I was searching the issues hoping for exactly the sort of description you gave above - so definitely worth having in the readme. (There are sections that say 'using any enabled Language Server Protocol linters' that would be great if links to a section on how to enable a language server.)

I've added some documentation for this now, with a brief description of how to define your own LSP linters. See :help ale-lint-language-servers.


ImportError: No module named '_ctypes'

Error shows when running python setup.py develop when installing ATIP on Python 3.8 within a dev-c7 container.
Fixed by running yum install libffi-devel.

Thanks @JoshuaAppleby.
TODO: add this into the Dockerfile.


Write a Haskell program to convert temperature from celsius to kelvin

Description
Write a Haskell program to convert temperature from celsius to kelvin
Input  ( C ) : -40
Output ( K ) : 233.15

Contributed by - @magar51

How to contribute

Comment !assign to assign this issue to yourself
Fork this repository
Create a new branch
Save the solution in program/program/convert-temperature-from-celsius-to-kelvin/convert_temperature_from_celsius_to_kelvin.hs
Commit the changes
Create a pull request

!assign


What is the best way to deploy from TravisCI?

Ideally I do not want to have an encrypted pem file to my server in my repo so that TravisCI can deploy.
Is there another way with a token specific to an App on Dokku?

Have a webhook on your server that does the push for you? Thats the only other way I can think of.

Wow that was a fast close... :gun: #triggerhappy :bangbang:
:wink:

I closed the issue because an answer was provided and this doesn't really have to do with dokku - either as a feature request or a bug. Not trigger happy, and still free to comment on it :)

Anyone else who has a similar situation, I will try & be helpful by sharing what I find... Initially I have come across http://dploy.io which looks promising.

Note: ^ solution is similar to giving your pem key to travisci, you're just giving access to another party :)

Note: ^ solution is similar to giving your pem key to travisci, you're just giving access to another party :)

Thanks for feedback. This is true, however for Travis it needs to be in the public repo (albeit encrypted).
I am on the fence about each solution & still searching for a better one.

I use AWS ops works and provide a deploy key when I define the app. There is a dokku deploy chef cookbook floating around somewhere. I'll try to find the link and drop it here.


Eventsource seems to be broken for _changes endpoint

It seems to close to connection after the first heartbeat is sent.
This only happens when I use this docker image, and not the one compiled manually.
Using 2.0.0 single
Public Example: https://relax0.grati.co/project-990231552b1542c1b7938ed5f74fce39-branch-master/_changes?heartbeat=5000&feed=eventsource&descending=false&since=now
Any idea what could be the problem?

Could you send us some of the couchdb and dockers logs so we can get more of an idea of what is happening.

Hey @garrensmith
Actually was an issue with couch not docker or this image. See COUCHDB-3164 if interested.
I managed to fix it by manually applying the patch from that bug.
Thanks!

Awesome Great to hear. I'm closing this ticket then.


Fix non-facade classes will result in no autocomplete

Currently non-facade classes are resulting non functioning autocomplete. The reason of this that an empty class will be defined in the ide helper class, which will be used for the auto-completion. This pull request prevents this behavior by only handling facades in the namespaced part of the helper file.
Unlike #802  this pull request will keep the alias registration.
Fixes #784

https://github.com/barryvdh/laravel-ide-helper/pull/841/files?w=1 :-)

Hoops, I accidentally removed the spaces (not that they should be there).

Seems to me this is the same as https://github.com/barryvdh/laravel-ide-helper/pull/802 but with less "noise"?

Ok. I rebased it to current master.

Basically you don't want the non Facade classes show up there as they would be empty and break the aliased classes. They still show up in the alias section, so Illuminate\Support\Arr will not be here but \Arr extends Illuminate\Support\Arr will be here.

Thank you for your clarification, makes sense to me!

Does this PR needs any more attention from me or is it good for now?

Good question, I think we wait for approval from @barryvdh

@barryvdh Any blocking reason here I should resolve?

@barryvdh @mfn
Do we have any update?
With this nice fix, It will prevent phpstan>=1.7 from reporting many errors to empty helper class.

Still has my 👍🏼 !

ping


[BEAM-11205] Update Libraries BOM dependencies to version 25.2.0

Updating Google Cloud Libraries BOM to the latest version 25.2.0 and associated dependencies to the compatible versions.
Updating dependencies listed in https://storage.googleapis.com/cloud-opensource-java-dashboard/com.google.cloud/libraries-bom/25.2.0/artifact_details.html
Linkage check results
https://gist.github.com/benWize/37f0d34e157974f6c1ff5a8e53f94a9b

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Run Java PostCommit

Run PostCommit_Java_Dataflow

Run PostCommit_Java_DataflowV2

Run Spark ValidatesRunner

Run SQL Postcommit

Where are Jenkins builds...?

Run Java Precommit

Run SQL Postcommit

Run SQL Postcommit

Run Java Precommit

org.apache.beam.examples.subprocess.ExampleEchoPipelineTest.testExampleEchoPipeline

There is nothing pending from my perspective.

Nice. Let's merge when checks become green. I see "Dataflow Java Post Commit Tests" pending (running).

Nice. Let's merge when checks become green. I see "Dataflow Java Post Commit Tests" pending (running).

All checks are passing now! Thanks, @suztomo

@benWize Thank you.


Package paper-land so that it is easy to use

We want to make it as easy as possible to run paper playground. This means packaging it in a way that it can be launched without using the command line. Putting some notes here now from a quick search on how this is done.

Static Site Deployment:

Build the app and serve it. Doesn't get us all the way there. We are not going to host it anywhere and the user would need to run a server.

Docker container

My understanding is that this offers a way to contain the development environment, but is still difficult for end users. They need to have Docker installed, and maybe other dependencies. They will need to be somewhat tech savvy to get docker running.

Electron:

Can be used to package the app and create an executable that can be run on Windows and macOS.

Use pkg to package the app.

Allows users to install and run the application. Not as much support for macOS though, the result is an .app instead of a .dmg. Apparently this is a bit more difficult to use (but I am not a Mac user so I am not familiar).

I believe Electron with electron-forge (to package into a .exe and .dmg) is the most promising. We also have a little experience with it since we used it briefly for quadrilateral/haptics exploration many years ago.
Apparently, once we have a .dmg and .exe, we can publish it as a release on github. @brettfiedler may already have experience with that.
@brettfiedler does electron seem reasonable to you? Are you aware of any other options you would like us to explore?
I am putting the steps I got from ChatGPT here for future reference. It shouldn't require a lot of code changes, but I do expect troubleshooting and fiddling to get it right.

Packaging your existing project with Electron or Electron Forge may present some challenges, given the complexity and architecture you described, but it is definitely possible. Here are some considerations and steps to help you through the process:
Considerations
Backend with Express and Node.js:
Your Node.js/Express backend will need to run within the Electron main process.
Multiple Browser Tabs:
This should be supported as you can open multiple BrowserWindows in Electron.
Web Directory:
Ensure the www directory and other static resources are correctly referenced and accessible within the Electron environment.
Database Dependencies:
Electron packages need all dependencies, which includes your database and migration scripts.
Steps to Package with Electron/Electron Forge
Install Electron and Electron Forge:
npm install electron electron-forge
Update your package.json: Add electron-specific configurations.
"main": "main.js", // Entry point for Electron
"scripts": {
    "start": "electron .",
    "package": "electron-forge package",
    "make": "electron-forge make"
},
"config": {
    "forge": {
        "packagerConfig": {},
        "makers": [
            {
                "name": "@electron-forge/maker-squirrel",
                "config": {}
            },
            {
                "name": "@electron-forge/maker-zip",
                "platforms": [
                    "darwin"
                ]
            },
            {
                "name": "@electron-forge/maker-deb",
                "config": {}
            },
            {
                "name": "@electron-forge/maker-rpm",
                "config": {}
            }
        ]
    }
}

Create main.js: This will be the Electron main process script, managing windows and backend services.
const { app, BrowserWindow } = require('electron');
const path = require('path');
const express = require('express');
const serverApp = express();

// Your server setup
serverApp.use(express.static(path.join(__dirname, 'www')));
require('./server/entry-server.js')(serverApp); // Adjust the server file path as needed

let mainWindow;

function createWindow() {
  mainWindow = new BrowserWindow({
    width: 800,
    height: 600,
    webPreferences: {
      nodeIntegration: true,
    },
  });

  mainWindow.loadURL('http://localhost:3000'); // Replace with your URL

  mainWindow.on('closed', function () {
    mainWindow = null;
  });
}

app.on('ready', () => {
  serverApp.listen(3000, () => {
    console.log('Server running on port 3000');
    createWindow();
  });
});

app.on('window-all-closed', function () {
  if (process.platform !== 'darwin') {
    app.quit();
  }
});

app.on('activate', function () {
  if (mainWindow === null) {
    createWindow();
  }
});

Modify Express Server for Desktop Environment: Ensure paths and static content delivery functions appropriately. You might need to adjust routes and asset paths accordingly.
Build and Package Your App: Use the Electron Forge commands:
npm run package
npm run make
Distribution
After running the packaging commands, you'll get distributable files in the out directory. Distribute these files using GitHub Releases, cloud storage, your website, or appropriate platforms.
Conclusion
While integrating your existing Express and React-based application into Electron involves several steps and quite a bit of configuration, it is achievable. This will allow you to provide a desktop application that users can run without setting up a development environment, fulfilling your goal for simplicity and ease of use.

Sounds like Electron might be the way to go here. We've used it in the past and we currently use it for other PhET projects I believe (was there a desktop app?). Either way, it sounds the easiest and has certainly worked before.
Any ideas on how we deal with .env file? Should we keep it as a thing that needs to be edited inside of the installation directory or would there need to be any key-value pairs transformed into settings inside the running Paper Playground itself?

We can auto-deploy from e.g., the main branch or just manually release when we feel like it. Can start somewhere before 1.0.0 and set to 1.0.0 at the end of the grant work?
Release Interface on GitHub:

![image](https://github.com/phetsims/paper-land/assets/47331395/aacb02ef-67be-4dba-9c67-cd76b483fd5a)

GPT-generated suggested GitHub Actions workflow:

To auto-deploy an Electron app using GitHub Actions, you can set up a workflow that automates the process of building, packaging, and potentially releasing your app across multiple platforms (like Windows, macOS, and Linux). Here’s a step-by-step guide to help you set this up:
1. Prepare Your Electron App
Make sure your Electron app has a proper package.json with all dependencies and build scripts configured. You should also have scripts for packaging and creating distributables (like using electron-builder or electron-forge).
2. Set Up GitHub Actions Workflow
Create a .github/workflows directory in your repository if it doesn't already exist, and then create a new YAML file for your workflow, e.g., electron_build.yml.
3. Define Workflow Configuration
Here’s a basic example of what your GitHub Actions workflow might look like. This configuration builds and packages an Electron app on Windows, macOS, and Linux:
name: Build and Release Electron App

on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - main

jobs:
  build:
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [windows-latest, macos-latest, ubuntu-latest]

    steps:
    - name: Check out source code
      uses: actions/checkout@v2

    - name: Set up Node.js
      uses: actions/setup-node@v2
      with:
        node-version: '14'

    - name: Cache node modules
      uses: actions/cache@v2
      with:
        path: ~/.npm
        key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
        restore-keys: |
          ${{ runner.os }}-node-

    - name: Install dependencies
      run: npm install

    - name: Build and Package App
      run: npm run dist

    - name: Upload Artifacts
      uses: actions/upload-artifact@v2
      with:
        name: ${{ matrix.os }}-app
        path: ./dist/*

  release:
    needs: build
    runs-on: ubuntu-latest
    if: github.event_name == 'push' && github.ref == 'refs/heads/main'
    steps:
    - name: Download Artifacts
      uses: actions/download-artifact@v2

    - name: Create Release
      id: create_release
      uses: actions/create-release@v1
      env:
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      with:
        tag_name: ${{ github.run_number }}
        release_name: Release ${{ github.run_number }}
        draft: false
        prerelease: false

    - name: Upload Release Asset
      uses: actions/upload-release-asset@v1
      env:
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      with:
        upload_url: ${{ steps.create_release.outputs.upload_url }}
        asset_path: ./*.zip
        asset_name: app-${{ matrix.os }}.zip
        asset_content_type: application/zip

Explanation:

Triggers: This workflow triggers on push and pull request events to the main branch.
Jobs: Defined under jobs, this example includes building the app across different operating systems using a matrix strategy.
Steps:

Checkout: Pulls the code from the repository.
Setup Node.js: Sets up the Node environment.
Cache Dependencies: Caches node_modules to speed up future runs.
Install and Build: Installs dependencies and builds the Electron app.
Upload/Download Artifacts: Uploads the packaged app as artifacts, which can be used in later steps or jobs.
Create Release: If the push is to the main branch, it creates a GitHub release.
Upload Release Asset: Uploads the built app to the GitHub release.

4. Add Secrets (if needed)
If your workflow requires environment variables or secrets (like deployment keys), add them in your repository’s settings under Settings > Secrets.
5. Commit and Push
Commit your workflow file and push it to your repository. GitHub Actions will automatically start running the workflow based on the events you specified.
This setup will give you a robust starting point for automating the deployment of your Electron app via GitHub Actions. Adjust the workflow as needed based on your specific build and release requirements.

Any ideas on how we deal with .env file

Good question. I think we have options, what is the ideal experience?

Just leave as is. Local build does not support ChatGPT and only runs on local file system.
As you suggested, let them edit somehow. If the .env can't be usesd then another config file.
Add a UI that lets them enter in keys for the AI or DB usage, and access to restricted files. I have seen projects do this, but it could raise security questions - I wouldn't want to enter my keys if I were a developer finding this project for the first time.

Something else?

Yeah, just to note what we currently have as possible variables:
DATABASE_URL=
STORAGE_TYPE=
ALLOW_ACCESS_TO_RESTRICTED_FILES=
OPENAI_API_KEY=
PORT=

The restricted file access should probably be revisited as well, since it is very specific to our database. I'll make another issue for that.
Is it obvious what other config files are for option 2 (json, yml)? I know Minecraft uses json settings/preferences. I think probably the hidden nature of .env makes it most difficult. Makes sense for some of those keys, but as long as it doesn't go to git (.gitignore settings.json or something), perhaps we are ok?

After a quick search it seems possible to use a config file that the electron app can read without needing to rebuild it, and it seems like we can use whatever format we want.

I have been having a heck of a time packaging the server-side code for Electron. As a stepping stone I have been trying to bundle the server code with webpack so we have a single file to run within Electron. The node_modules have used by this project have made that very difficult. But finally made a breakthrough today, I can bundle the server-side code with webpack if I remove this line:
// app.use( require( 'heroku-ssl-redirect' )( [ 'production' ] ) );

Seems totally safe to remove, and it looks like this is just for an old heroku deployment of the legacy project.

OK, I have a package that I can run from the root paper-land directory like this:
./out/paperprograms-win32-x64/paperprograms.exe

That is a great step forward!
However, it does not work if I try to run paperprograms.exe if I run from paperprograms-win32-x64. Error is
stderr: Error copying default data: Error: ENOENT: no such file or directory, scandir 'C:\Users\Jesse\Documents\Development\phetsims\paper-land\out\paperprograms-win32-x64\resources\app\server-dist\default-data

A couple of problems to solve

Relative path to default-data is a problem.
We will need to package the contents of www/ directory into the electron build so that the bundled server can serve relevant files from within the package.
The .env file will need to be packaged. I am not sure yet if we will be able to support configurations without rebuilding because of "asar": true
There will likely be other problems with relative paths in the existing code.
There will be MacOS specific problems to solve (there have been a few Windows specific things already).

@brettfiedler FYI, I am about 9 hours into this - I have made progress but it is difficult to say how much more time this will take.

The path issue has been resolved by

Using node module webpack-node-externals to bring directories into the build
The entire www directory is included in the build, along with default-data so that it can find contents from the runnable.
Removing these lines from server/main.js, so that it serves right from /www and serves the built front end files within.

//   const compiler = require( 'webpack' )( require( '../webpack.config.js' ) );
//   app.use( require( 'webpack-dev-middleware' )( compiler ) );

With those changes, I can run npm run package double click on the paperprograms.exe file and run it without errors!
Now that that is working, we can try the make command and see how it does.

We checked in during a meeting today, and we are going to stop at the package because:

It seems to work well.
We don't need to deploy to an app store and don't need the output of make.
A package makes it very easy to set up an environment variable file that we can pull from.

So the next steps are

[ ] Clean up the changes and output from npm run package.
[ ] Make it clear that make is not supported.
[ ] Create the package for MacOS.
[ ] Add documentation for how to run the build process and what to expect.
[ ] Share somehow.

OK, it is cleaned up and getting close to a commit point. I found one problem in testing, I can't send images in the built version:

stderr: Error: ENOENT: no such file or directory, scandir './www/media/images'
    at Object.readdirSync (node:fs:1513:3)
    at eval (webpack://paperprograms/./server/api.js?:570:22)
    at Array.reduce (<anonymous>)
    at eval (webpack://paperprograms/./server/api.js?:569:39)
    at Layer.handle [as handle_request] (C:\Users\Jesse\Documents\Development\phetsims\paper-land\out\paperprograms-win32-x64\resources\app\node_modules\express\lib\router\layer.js:95:5)
    at next (C:\Users\Jesse\Documents\Development\phetsims\paper-land\out\paperprograms-win32-x64\resources\app\node_modules\express\lib\router\route.js:149:13)
    at Route.dispatch (C:\Users\Jesse\Documents\Development\phetsims\paper-land\out\paperprograms-win32-x64\resources\app\node_modules\express\lib\router\route.js:119:3)
    at Layer.handle [as handle_request] (C:\Users\Jesse\Documents\Development\phetsims\paper-land\out\paperprograms-win32-x64\resources\app\node_modules\express\lib\router\layer.js:95:5)
    at C:\Users\Jesse\Documents\Development\phetsims\paper-land\out\paperprograms-win32-x64\resources\app\node_modules\express\lib\router\index.js:284:15
    at Function.process_params (C:\Users\Jesse\Documents\Development\phetsims\paper-land\out\paperprograms-win32-x64\resources\app\node_modules\express\lib\router\index.js:346:12)

https://github.com/phetsims/paper-land/issues/259#issuecomment-2221659926 is fixed, and the package is working well.
But I am running into a serious problem - the node_modules cannot be zipped on Windows. So we have no way to share this. I get an "invalid directory" error when I try to unzip the project. It could be the same issue as https://github.com/phetsims/paper-land/issues/259#issuecomment-2220750529. I tried several things like

pruning down node_modules
skipping them entirely
installing them from within the Electron app during runtime
using electron-builder instead of electron-forge

I would like to bail on Electron, or at least put it on hold. Another (much more lightweight) solution I want to try is to create platform specific executables that have a Node.js runtime packaged in. The user can double click on this and it will automatically clone paper playground, install dependencies, run the project (automatically launching a browser window). We can use pkg and a short Node.js script to do all of this. This seems similar to what we are trying to do with Electron but without the headache.

OK, the above commit has this working much better, and without the bloat of Electron and packaging in node_modules. New remaining steps:

[ ]  Remove dependencies, scripts, documentation for Electron.
[ ] Create the package for MacOS.
[ ] Add documentation for how to run the build process and what to expect.

OK - after some additional work, I have some builds ready to review or share. However, there is one thing that would be good to discuss.
pkg lets you bundle the Node.js runtime, but not the npm CLI or other components. I could not find a workaround for this. As such, the current solution requires that Node.js is installed on the user's machine. However, once Node is installed, they can simply install and run paper-playground by running the platform executable:

This executable will then install all needed dependencies and start the server. They can then go to their browser and run paper playground (a message is shown to them to do this).
This is not what I hoped for, but it keeps the builds lightweight because we don't have to bundle the hundreds of MB of node_modules.
@brettfiedler Ill send you the zipped build files - this is ready for review and to discuss next steps.

Fantastic. A few notes:

We should rename the file. I think we can probably leave build if that is an artifact of building, but otherwise we can rename the release .zip in the interface when we set up the GitHub release.
I needed to close out the installation and re-open for it to actually run - not sure the cause. I will try again and see if it is repeatable.
I did indeed need to set the site settings to force Allow the camera. Will need to make sure this is heavily emphasized in the docs. Leaving myself assigned to make sure that is complete.

Noting build size is 444 MB

[ ] Let's add a "Close this window to terminate Paper Playground." after we suggest opening in a Chrome/Edge browser

[ ] Replace .env with config.json

OK, it took more time than I hoped but the .env has been replaced with config.json. Tested on Windows and MacOS for both development and build versions. We also could remove the dotenv node module.
I put a note in slack that people will have to move entries from .env into config.json. What is next @brettfiedler?

Everything looks good and works well here. Will close this issue in favor of a "release" issue for further steps.


Make SecurityValidator work with malicious secret sharing scheme

Currently SecurityValidator accepts semi-honest context. It does not make much sense because validation can be performed on MaliciousReplicated<F> only, so the input should rather be ProtocolContext<'_, MaliciousReplicated<F>, F> instead.
The reason for this behavior is because Reveal and CheckZero protocols are not generic over any secret sharing scheme but they should be. Once it is done, SecurityValidator should be changed to accept malicious context.

[ ] Change Reveal to be generic over any secret sharing scheme
[ ] Change CheckZero to be generic over any secret sharing scheme
[ ] Change SecurityValidator to accept malicious context

all of this is either no longer apply or has been implemented already when we unified malicious and semi-honest IPA implementations


Error: Transaction reverted: trying to deploy a contract whose code is too large

I came across a scenario where I cant deploy the contract whose code is more than 3000 lines, while writing the tests
 Error: Transaction reverted: trying to deploy a contract whose code is too large
Any thoughts on how to fix this

This is not a TypeChain issue -- we only generate typings for existing tools :) I see you've already created an issue in hardhat so I'll close this one.

@quezak is right. Just to add: if you use ganache consider using: allowUnlimitedContractSize flag. But obviously, you still won't be able to deploy such big SC on the mainnet.

Thanks then, this would be the issue from hardhat. allowUnlimitedContractSize :true  didn't work for me either

@sriharikapu another thing -- since your contract is over 3000 lines long, it may be that it really is too large to be deployed. Check the gas required to deploy it, if it's over the 12.5M block limit, you'll need to enable solidity optimizations or split it into smaller contracts.

allowUnlimitedContractSize is not working for me, the point of deploying without optimizations locally is to be able to debug properly. Optimization should only be used in mainnet...

settings: { optimizer: { enabled: true, runs: 200, details: { yul: false }, }, }


"database is locked"

suddenly unable to start db transactions (read or write)
has the following consequences if it happens (just seen once so far):

uploads don't get indexed

so upload deduplication is busted
but a restart with -e2ts fixes everything back up

search is disabled
otherwise harmless, just super annoying

uploads got stuck in _finish_upload at self.idx_wark giving clients a red toast saying database is locked before it automatically retried the handshake and successfully finished the upload, bypassing the indexing tho
searches and reindexing also failed similarly, guessing a thread died while holding a transaction hostage (is that possible?)
unfortunately grabbed the /?stack of another copyparty instance running on the same server so don't have any context
in case someone runs into this:

pls check server logs for a huge wall of base64 and post it -- that's a stacktrace of all threads which will probably help track this down -- alternatively visit /?stack on your server to take a look yourself
also include the lsof if there is one (only works on linux/macos)

original bug report (thanks!):

this is hopefully fixed in v1.5.3


Generating twitter bio of previously given pasted bio not current bio.

Hi @Nutlope ,
Initiallly, when I entered the text "Mechanical engineer with 7 years of experience..." and chose the "Professional" option, I found that the Twitter bio displayed was that of a digital marketer consistently.
Subsequently, when I input the text "Historian with 10 years of experience..." and selected the "Professional" option, the Twitter bio being shown was that of the Mechanical engineer with 7 years of experience, which was the bio I had provided earlier.
It seems that regardless of the bio I initially input, the generated Twitter bio is consistently related to digital marketing. From the second attempt onwards, it continues to display the previously generated bio.
I would greatly appreciate any assistance in resolving this issue. Thank you in advance!

I had the same issue.
Instead of getting the bio from the body object, I retrieve the content from the user message.
const body = await req.json()     console.log(body)
you can see that it's indeed the last message that comes through.
And to get the last user message, I use [body.messages.length -1].content.
This fixes the issue while we look for a cleaner solution. Good luck!

I can't figure this out either. Still getting the previous input's openAI response.
I noticed in TwitterBio.io the text in the BIO input remains after you click generate. Scroll to bottom doesn't work either.

I had the same issue. Instead of getting the bio from the body object, I retrieve the content from the user message.
const body = await req.json() console.log(body)
you can see that it's indeed the last message that comes through. And to get the last user message, I use [body.messages.length -1].content.
This fixes the issue while we look for a cleaner solution. Good luck!

Where is this in the code? they may have updated to the Vercel AI SDK since your post. Thanks!

I had the same issue. Instead of getting the bio from the body object, I retrieve the content from the user message.
const body = await req.json() console.log(body)
you can see that it's indeed the last message that comes through. And to get the last user message, I use [body.messages.length -1].content.
This fixes the issue while we look for a cleaner solution. Good luck!

Where is this in the code? they may have updated to the Vercel AI SDK since your post. Thanks!

I had the same issue. Instead of getting the bio from the body object, I retrieve the content from the user message.
const body = await req.json() console.log(body)
you can see that it's indeed the last message that comes through. And to get the last user message, I use [body.messages.length -1].content.
This fixes the issue while we look for a cleaner solution. Good luck!

I had the same issue. Instead of getting the bio from the body object, I retrieve the content from the user message.
const body = await req.json() console.log(body)
you can see that it's indeed the last message that comes through. And to get the last user message, I use [body.messages.length -1].content.
This fixes the issue while we look for a cleaner solution. Good luck!

Hi @TornatoreTristan , Thanks for reply.  But I am not able to find the code , where I need to change. Please advice with file name and existing code. please! thanks in advance!

I had the same issue. Instead of getting the bio from the body object, I retrieve the content from the user message.
const body = await req.json() console.log(body)
you can see that it's indeed the last message that comes through. And to get the last user message, I use [body.messages.length -1].content.
This fixes the issue while we look for a cleaner solution. Good luck!

Where is this in the code? they may have updated to the Vercel AI SDK since your post. Thanks!

I had the same issue. Instead of getting the bio from the body object, I retrieve the content from the user message.
const body = await req.json() console.log(body)
you can see that it's indeed the last message that comes through. And to get the last user message, I use [body.messages.length -1].content.
This fixes the issue while we look for a cleaner solution. Good luck!

I had the same issue. Instead of getting the bio from the body object, I retrieve the content from the user message.
const body = await req.json() console.log(body)
you can see that it's indeed the last message that comes through. And to get the last user message, I use [body.messages.length -1].content.
This fixes the issue while we look for a cleaner solution. Good luck!

Hi @TornatoreTristan , Thanks for reply. But I am not able to find the code , where I need to change. Please advice with file name and existing code. please! thanks in advance!

Here is the code.
Instead of using const { vibe, bio } = await req.json();, you can get the messages out by using const { vibe, messages } = await req.json(); Then you will find the correct bio in the last element of that messages as its content.
Here is the full code of function POST:
export async function POST(req: Request) {
  const { vibe, messages } = await req.json();
  const bio = messages.at(-1).content;

  // Ask OpenAI for a streaming completion given the prompt
  const response = await openai.createChatCompletion({
    model: 'gpt-3.5-turbo',
    stream: true,
    messages: [
      {
        role: 'user',
        content: `Generate 2 ${vibe} twitter biographies with no hashtags and clearly labeled "1." and "2.". ${
          vibe === 'Funny'
            ? "Make sure there is a joke in there and it's a little ridiculous."
            : null
        }
          Make sure each generated biography is less than 160 characters, has short sentences that are found in Twitter bios, and base them on this context: ${bio}${
          bio.slice(-1) === '.' ? '' : '.'
        }`,
      },
    ],
  });

  // Convert the response into a friendly text-stream
  const stream = OpenAIStream(response);
  // Respond with the stream
  return new StreamingTextResponse(stream);
}


Dev to front merge - change in graphics and monthly tweets added to comparing tool

change in graphics and monthly tweets added to comparing tool

change in graphics and monthly tweets added to comparing tool


Fix  Making a new file with the addon enabled does not immediately active the addon. Simply toggle the addon in the Preferences pane to fix this

Hey that fixed it! Thanks so much, I'll upload that fix now.


Comment Counts

Is there a reason why :

Commit Comment Counts is reported and not Commit Counts ?

Are PR_Review_Comment_Count the same as comments on a PR?

hello

@@hello
#63

@pk

pk

hello

hello

Yes

http://GitHub/stevensonmoving.com

OLA

VOLTEI,CONSEGUI QUEM QUISER E PRECISAR CHAMA NO CELULAR   +55<PHONE_NUMBER>6 Alonso Casamali Brasil

🐛🪲 and colaps


Write a Rust program to find sum of gp series

Description
Write a Rust program to find sum of gp series
A geometric progression (GP) is a sequence of numbers where each term after the first is found by multiplying the previous one by a fixed, non-zero number called the common ratio. The nth term of a GP is given by the formula an = a1rn-1 where a1 is the first term and r is the common ratio.
Input  : 2, 3, 3
Output : 26

How to contribute

Save the solution in find_sum_of_gp_series.rs file
Add find_sum_of_gp_series.rs file in program/find-sum-of-gp-series folder

!assign


[BUG] write_to_tsfile not writing header

Parameter now passed correctly.

What does this implement/fix? Explain your changes.
Saving a collection of time series in np.ndarrays or list format with the write_to_tsfile method did not create the header correctly. A parameter was missing and is now passed.
Does your contribution introduce a new dependency? If yes, which one?
No.
Any other comments?
My first ever PR, let me know if there is anything to improve!
Unsure if this is a BUG or MNT.
PR checklist

For all contributions

[ ] I've added myself to the list of contributors. Alternatively, you can use the @all-contributors bot to do this for you.
[x] The PR title starts with either [ENH], [MNT], [DOC], [BUG], [REF], [DEP] or [GOV] indicating whether the PR topic is related to enhancement, maintenance, documentation, bugs, refactoring, deprecation or governance.

@all-contributors add @vNtzYy for bug


fix: Add Installation to Conda setup in CI

It seems from https://github.com/actions/runner-images/issues/9262 that miniconda was removed from Mac images.
This adds the configuration to the setup step to now install miniconda again.
I need to validate that this isn't having a significant impact on the Windows and Linux steps where this is not a concern.

Disregard this for now - I see the bigger problem is that MacOs-latest is now ARM based which causes other issues.
I'll create an issue to discuss the best solution.


Feat/fix with vitest example

Fixes the with-vitest example.

Removes and replaces the need of patching @testing-library/jest-dom.
conditionally updates the package-resolving to the browser-field only if vitest runs.

Closed. Opened against the wrong branch (should be dev, not main)


Bot not starting up

unsubscribe
On Sat, 12 Dec 2020, 5:13 pm Akarshit7<EMAIL_ADDRESS>wrote:

[image: Screenshot_20201212-170803]
https://user-images.githubusercontent.com/75678276/101982934-5051c400-3c9d-11eb-9f9f-fb829e911594.jpg
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/out386/aria-telegram-mirror-bot/issues/122, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ANWPJGRME53KH7RDQR2PZSDSUNJOJANCNFSM4UYBP3CA
.

lol


Where can i download the latest EDDI beta version?

Like the issue headline says :)

The beta is available at http://www.mcdee.net/elite/EDDI-beta.exe


Nested Contents add content dialog is behind the header on small screens with many document elements

Hello Søren
There is a bit of a problem in your CSS causing the Nested Content getting behind stuff.
Look at this issue:
https://github.com/umbraco/Umbraco-CMS/issues/7519
It's because of this in your CSS:
.umb-editor-container { z-index:2; }

Fixed in 25aff5b


New Azure Bot Service support

With bots created with the new Azure Bot Service there seems to be an exception in the SendMessage response. I believe this is something to do with the Activity. A quick workaround for now (until a fix is ready) is to send a BasicActivity instead.
public class BasicActivity
{
  public string type { get; set; }
  public UserAccount from { get; set; }
  public string text { get; set; }
  public string id { get; set; }
  public string replyToId { get; set; }
}

Thanks David. late comment but you are correct and this is actually what I ran into when talking to a Node.js bot hosted in Azure Bot Service back in November when you and I chatted about this. I am working to integrate this in the new branch right now. I will close out the issue when it's done and posted.


[SPARK-6890] [core] Fix launcher lib work with SPARK_PREPEND_CLASSES.

The fix for SPARK-6406 broke the case where sub-processes are launched
when SPARK_PREPEND_CLASSES is set, because the code now would only add
the launcher's build directory to the sub-process's classpath instead
of the complete assembly.
This patch fixes the problem by having the launch scripts stash the
assembly's location in an environment variable. This is not the prettiest
solution, but it avoids having to plumb that location all the way through
the Worker code that launches executors. The env variable is always
set by the launch scripts, so users cannot override it.

I tested on Linux with and without SPARK_PREPEND_CLASSES. I'll try it on Windows tomorrow just to make sure I didn't break anything there.
/cc @davies @andrewor14

Test build #30214 has started for   PR 5504 at commit 31d3ce8.

Test build #30214 has finished for   PR 5504 at commit 31d3ce8.

This patch fails Spark unit tests.

This patch merges cleanly.

This patch adds the following public classes (experimental):

case class MinOf(left: Expression, right: Expression) extends Expression

This patch does not change any dependencies.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/30214/
Test FAILed.

Update: tested on Windows too, looks fine.

Test build #30258 has started for   PR 5504 at commit ff87a60.

Test build #30258 has finished for   PR 5504 at commit ff87a60.

This patch fails MiMa tests.
This patch merges cleanly.
This patch adds no public classes.
This patch does not change any dependencies.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/30258/
Test FAILed.

Test output was weird. Jenkins retest this please

Test build #30271 has started for   PR 5504 at commit ff87a60.

The changes LGTM. I'm testing this out locally.

Test build #30271 has finished for   PR 5504 at commit ff87a60.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.
This patch does not change any dependencies.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/30271/
Test FAILed.

This works locally. I wonder why it's failing random MLlib tests.

retest this please

Test build #30273 has started for   PR 5504 at commit ff87a60.

Test build #30273 has finished for   PR 5504 at commit ff87a60.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.
This patch does not change any dependencies.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/30273/
Test FAILed.

The test results are really flaky, and I don't believe these tests are failing outside of this PR. For this reason I don't think we should merge this patch as is yet, but I haven't dug into why the MLlib tests are failing.

Let me see if I can reproduce it locally.

All tests fail with an NPE in lines that are calling SparkEnv.get... shouldn't be caused by this change, but well, I'll take a look anyway.

Actually, it might be caused by this change.

The latest change should fix the tests. I realize that now there's some duplication, and that because I had to restore the Java code to look for the assembly (see comment in patch), we don't necessarily need to expose it in an env variable. But being able to control the assembly's location from the shell scripts was the whole point of #5085, so I guess if we want to support that use case, the env variable is still needed.

Test build #30281 has started for   PR 5504 at commit 7aec921.

Test build #30281 has finished for   PR 5504 at commit 7aec921.

This patch passes all tests.

This patch merges cleanly.

This patch adds no public classes.

This patch adds the following new dependencies:

snappy-java-<IP_ADDRESS>.jar

This patch removes the following dependencies:

snappy-java-<IP_ADDRESS>.jar

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/30281/
Test PASSed.

Alright, I tested the latest changes locally again and can verify that this patch does fix the problem. Now that it's also passing tests I will merge this into master. Thanks for fixing this so promptly @vanzin.

@vanzin I'm ok with the introduction of an spark assembly env var but it does seem unnecessary. The logic could have been as simple as:
if (SPARK_PREPEND_CLASSES)
find_assembly()
else
getLocation().getPath()

Will submit a hot fix in a bit

I think @vanzin is saying the logic is correct? at least the intent is to not bother searching for the assembly when testing. Do you mean you think that has to change?

Maintaining a non-null value for spark_assembly is a good thing unless there is a good reason to not do so.

The reason is explained in the code comments and in my comments above. Please don't fix what doesn't need fixing.


M0-1-9: Fix dead-code false positive when constexpr integer is used in array size

Description
Addresses #678 refactoring the strategy in #660 (related to unused variables) so that it is used in the dead code check too.
Change request type

[ ] Release or process automation (GitHub workflows, internal scripts)
[ ] Internal documentation
[ ] External documentation
[x] Query files (.ql, .qll, .qls or unit tests)
[ ] External scripts (analysis report or other code shipped as part of a release)

Rules with added or modified queries

[ ] No rules added
[ ] Queries have been added for the following rules:

rule number here

[x] Queries have been modified for the following rules:

M0-1-3
M0-1-9

Release change checklist
A change note (development_handbook.md#change-notes) is required for any pull request which modifies:

The structure or layout of the release artifacts.
The evaluation performance (memory, execution time) of an existing query.
The results of an existing query in any circumstance.

If you are only adding new rule queries, a change note is not required.
Author: Is a change note required?

[x] Yes
[ ] No

🚨🚨🚨
Reviewer: Confirm that format of shared queries (not the .qll file, the
.ql file that imports it) is valid by running them within VS Code.

[ ] Confirmed

Reviewer: Confirm that either a change note is not required or the change note is required and has been added.

[ ] Confirmed

Query development review checklist
For PRs that add new queries or modify existing queries, the following checklist should be completed by both the author and reviewer:
Author

[x] Have all the relevant rule package description files been checked in?
[x] Have you verified that the metadata properties of each new query is set appropriately?
[x] Do all the unit tests contain both "COMPLIANT" and "NON_COMPLIANT" cases?
[x] Are the alert messages properly formatted and consistent with the style guide?
[ ] Have you run the queries on OpenPilot and verified that the performance and results are acceptable?As a rule of thumb, predicates specific to the query should take no more than 1 minute, and for simple queries be under 10 seconds. If this is not the case, this should be highlighted and agreed in the code review process.
[x] Does the query have an appropriate level of in-query comments/documentation?
[x] Have you considered/identified possible edge cases?
[x] Does the query not reinvent features in the standard library?
[x] Can the query be simplified further (not golfed!)

Reviewer

[ ] Have all the relevant rule package description files been checked in?
[ ] Have you verified that the metadata properties of each new query is set appropriately?
[ ] Do all the unit tests contain both "COMPLIANT" and "NON_COMPLIANT" cases?
[ ] Are the alert messages properly formatted and consistent with the style guide?
[ ] Have you run the queries on OpenPilot and verified that the performance and results are acceptable?As a rule of thumb, predicates specific to the query should take no more than 1 minute, and for simple queries be under 10 seconds. If this is not the case, this should be highlighted and agreed in the code review process.
[ ] Does the query have an appropriate level of in-query comments/documentation?
[ ] Have you considered/identified possible edge cases?
[ ] Does the query not reinvent features in the standard library?
[ ] Can the query be simplified further (not golfed!)

Even though there are no conflicts, at least at the moment, please let me know if it is convenient that I rebase to upstream main or next, as well as squashing the commits into one.


AttributeError: 'module' object has no attribute 'Consumer'

It seems the doc is not up to date, there is no Consumer class anymore in the library.
In [5]: consumer = oauth.Consumer(key=client_id, secret=client_secret)
AttributeError                            Traceback (most recent call last)
 in ()
----> 1 consumer = oauth.Consumer(key=client_id, secret=client_secret)
AttributeError: 'module' object has no attribute 'Consumer'

oh yes there is:
https://github.com/joestump/python-oauth2/blob/master/oauth2/__init__.py#L181
How are you importing oauth? Can you show more of the code?

I started with the release currently available on pypi. Docs are related to the upstream version.
With the current upstream package it works.


How to document methods and method arguments?

Is there a way to document methods and their arguments in a consistent fashion?

Thanks for the issue. This needs https://github.com/runem/web-component-analyzer/issues/146 to be implemented.

Actually, in my workflow, I manually edit the custom-elements.json file, completely by passing the need for the analyzer.

Depends on #61

#61 seems to be done, has there been any progress on it? It seems like 1.0.0-pre.3 does not display methods.

Yes the support for methods isn't added yet. I will work on this when I have time, hopefully this Friday.

@web-padawan thanks for taking care of this issue. I noticed there was no information in the changelog and the CDNs are still at

unpkg: 1.0.0-pre.3
skypack: 1.0.0-pre.3
jspm: 1.0.0-pre.2
Is there a targeted version for this release or do I need to build from source? Thank you for your work on this library.


Dependabot Java (Gradle) with packages stored on GitHub Package Registry.

Hey,
I was experimenting recently with using GitHub Package Registry for my Java (maven/ gradle) dependencies. I couldn't make Dependabot see those releases though. Do you have any hints how should I set it up? It looks like GitHub Package Registry ignores maven-metadata.xml - even though deployment says it has been uploaded successfully.
I would be grateful for some sort of step-by-step guide / example on how to use Dependabot Java (Gradle) with packages stored on GitHub Package Registry.
Thanks!

I think I have the same issue here: https://github.com/oliverfernandez/marfeel-core/issues/1
Dependabot says I should provide authentication details, but I'm not using private repositories in my project
In my case, I'm using GitHub Package Registry for Javascript dependencies

I found my problem!
I asume that since GitHub Package Registry is still in beta, is not public available. So in order Dependabot can see packages from GitHub Package Registry, I had to add a Config variable to my Dependabot app
In my case, I had to create a new Config variable of type Javascript registry, and put there npm.pkg.github.com as Registry
@artzag is it possible that you need to do something similar, but in your case create a Config variable of type Maven repository?

@oliverfernandez I was just in the middle of writing this commit that will improve the error message in this case. Glad you were able to figure it out without that!
@artzag I'll take a look into your case now.
Ideally we wouldn't require you to enter a config variable for GPR, but that will be a slightly bigger  change on our  side.

@artzag can you tag Dependabot in an issue / PR where this is a problem?

Hi,
@oliverfernandez - thanks for hints! I was experimenting with config variable as well and I don't think there is a permissions/ visibility issue.
It looks like GitHub Package Registry is using some other way to index uploaded Java (maven/ gradle)-artifact versions. I mean - other than by using maven-metadata.xml file. Or at least - it doesn't expose it where Dependabot is expecting it. Thus - Java (maven/ gradle) dependencies stored in GitHub Package Registry are not visible to Dependabot.

@artzag if there isn't an issue or PR you can tag @dependabot in then an email to<EMAIL_ADDRESS>with the full name of the repo would work, too. :octocat:


cla: accepted by @ivor11

Accepted CLA by updating contributors.csv

Thank you for accepting the CLA and taking time to contribute!!
Welcome to the Ockam Community 🥳
If you have questions, as you explore, join us on the contributors discord channel https://discord.gg/bewvnm6zqS


Queries: Quill Integration

I think we can start with support only for Scala 3 given the new implementation in protoquill.
Ideally, the integration should support async drivers but unfortunately it seems Quill doesn't have support for them now. We could extend from JdbcContext directly to avoid going through ZIO's runtime.

We dropped Jasync support because there were race conditions and it was too much to support for one database. I think Jdbc is the right way to go for now.


Failed to run init command: cannot create directory ‘/app/assets/superset’: Permission denied

Hi
Installing aspects, enabling the plugin, saving config and tutor k8s do init --limit will fail.

The reason is the User is changed to superset at the end of the Dockerfile:
https://github.com/openedx/tutor-contrib-aspects/blob/4dfc7ee735e75555906349bdc357bd5f8d86ed91/tutoraspects/templates/aspects/build/aspects-superset/Dockerfile#L39C4-L39C14
and it doesn't have permission to create the directory in the /app with root as the owner.
tutor version 15.3.6
aspects version: 0.42.0
OS: Ubuntu 20.04

Thanks for this report, this is already resolved by this PR:
https://github.com/openedx/tutor-contrib-aspects/pull/391
Can you test it out and provide feedback?

Hi Emad, the above PR is merged now, so you should be able to install latest to test it out.

Awesome.
This is fixed in 0.42.1. Thanks.


Datasaver save speed

Recently, two users have reported that it takes too much time to save data to the database during the experiment. In particular, saving 10,000 points for 5 parameters (2 dependent, and 3 independent) is reported to take 5-10s.
After investigating the DataSaver add_results method using cProfile profiler, I could improve the saving speed by a factor of ~2. Hence, this pull-request.
The fix is in the insert_many_values method. The data is split into chunks in order to pass as many values as possible within a single INSERT call. The problem was that each of these INSERT calls had a commit which was decreasing the performance. As it is suggested everywhere on the web, in this situation, all the INSERT calls should happen within one transaction, meaning there should be a single COMMIT for all of them. This way the performance is improved.
Changes in this PR:

one COMMIT per all INSERTs
remove unnecessary commit after the insert_many_values call, because commit is done within that function
use itertools instead of list comprehension for flattening a list of lists (advised on StackOverflow)
add convenient profile decorator function

Note that the users would like to have this amount of data saved within ~0.1s which raises a question whether sqlite is the right backend. But let's keep this discussion aside of this pull-request.

I additionally tested:

increasing cache -> no improvement
using isolation_level='EXCLUSIVE'-> no improvement
using a pure in memory database: -> no significant improvement (from ~3 down to 2.19 s ± 224 ms)
So I suggest to test storing the data as binary blobs until we come up with a better solution.

@Dominik-Vogel Shall we at least merge the 2x fix from this PR?

as discussed with @WilliamHPNielsen , I will remove the benchmark code from this PR, and make a new PR with the benchmark code that uses asv (like it is used in numpy).


User supplied flexible checksums not respected

Describe the bug
When a user supplies both checksum_algorithm and a pre-calculated checksum the SDK will go ahead and calculate one anyway and overwrite the user supplied one.
s3.put_object()
    .bucket(bucket_name)
    .key(key_name)
    .checksum_algorithm(aws_sdk_s3::types::ChecksumAlgorithm::Sha256)
    .checksum_sha256("bad-sha")
    .body(body)
    .send()
    .await?;

Expected Behavior
The SDK should detect this and use the user supplied value and do nothing. This is the behavior described in the SEP.
Current Behavior
The user supplied checksum is serialized to a header and then is later overwritten with the value it calculates.
Reproduction Steps
See bug description. Sending a bad value for the checksum should fail but it doesn't because we overwrite it.
Possible Solution
No response
Additional Information/Context
No response
Version
aws-sdk-s3 = "1.21.0"

Environment details (OS name and version, etc.)
macOS 14.4
Logs
No response

Same problem here (with a working solution):
https://github.com/awslabs/aws-sdk-rust/issues/1103#issuecomment-2008959603
In short:
A workaround is not specifying the algorithm. So a working code would be:
s3.put_object()
    .bucket(bucket_name)
    .key(key_name)
    .checksum_sha256("bad-sha")
    .body(body)
    .send()
    .await?;

closing as duplicate of #1103


[hiredis] Fix feature ssl

Fix feature ssl, add include files.
Related: #9336
Note: All features passed in the following triplets test:

x86-windows
x64-windows
x64-windows-static

/azp run

/azp run

Cools, thanks Jack!


"+clicked_branch_link" property in BranchUniversalObject is different on Android and iOS

in a Xamarin forms project, the property retrieved from +clicked_branch_link in BranchUniversalObject is different:

iOS: value is returned as 0/1

Android value is returned as true/false

This means we have to do special parsing in the forms project.
The data should be normalized shouldn't it?
Using latest Xamarin forms and Branch SDK 4.08

@kwacks i will this in the next version, thanks for report


Docker container is stuck on PG_dump with docker-ce version 18.03

The official docker container is stuck on PG_dump with docker-ce version 18.03.
When we upgrade docker-ce to 18.06 on the same environment the PG_dump doesnt become stuck anymore.
If we downgrade, the pg_dump is stuck again, on every environment.
If we run pg_dump inside a script, the script becomes broken, because the dump never finishes.
If we run pg_dump in command line to std.out, an enter when it is stuck, let it continious.

Can you give all the commands you ran and any relevant contextual information or files for reproducing the issue

the command we ran was:
-pg_dumpall -c -Upostgres
I am not sure if I can provide the data inside the database, since it contains sensitive company data.
A pg_dumpall on an empty database would never be stuck.
We literally just entered the docker container with exec, and ran the pg_dumpall -c -Upostgres command, and it became often stuck in the middle of printing the text and we had to hit enter and it would continue.
We tried to keep the reproduce scenario so small as possible. So the basic command became stuck.
Will tomorrow in the company see to show an example output, ofcource with hidden data

Honestly, I think the best we can do is recommend you attempt to create a reliable reproducer and report this upstream -- there's not likely anything we've done in the image to cause this nor much we can change about the image to fix it.
Is it something you can reliably reproduce if you copy the data to another machine? (this would help rule out hardware or system issues)
Can you reproduce it with newer versions of PostgreSQL? (to help upstream determine whether this is something they've already fixed in a newer release)
Can you reproduce it outside Docker with a similar environment to help narrow down whether it's really Docker at fault here?
I notice that pg_dumpall has a --verbose flag, but I'm not sure whether it'll really give you much more useful information -- worth a try.
The TL;DR here is that you might have a solid issue on your hands, but I think the absolute most we could do in the context of the Docker image is document it, and it seems to be a sufficiently niche issue that I'm not convinced that's entirely warranted?

Is it something you can reliably reproduce if you copy the data to another machine? (this would help rule out hardware or system issues)

Yes this is the case, tried on different vm's aswell real servers.

Can you reproduce it with newer versions of PostgreSQL? (to help upstream determine whether this is something they've already fixed in a newer release)

Yes, postgreSQL 10 aswell 11, alpine as non alpine have this behavior

I notice that pg_dumpall has a --verbose flag, but I'm not sure whether it'll really give you much more useful information -- worth a try.

Nowhere it outputs more info, or any error or root cause, neither in the logging.

Honestly, I think the best we can do is recommend you attempt to create a reliable reproducer and report this upstream -- there's not likely anything we've done in the image to cause this nor much we can change about the image to fix it.

...

The TL;DR here is that you might have a solid issue on your hands, but I think the absolute most we could do in the context of the Docker image is document it, and it seems to be a sufficiently niche issue that I'm not convinced that's entirely warranted?

Unfortunately, I don't think there's much more we can do for you here (in https://github.com/docker-library/postgres) -- it sounds like your issue is still environmental, but I really don't know, and the best we can do is recommend you try one of the PostgreSQL mailing lists, the Docker Community Forums, the Docker Community Slack, or Stack Overflow for further help debugging.  No matter where you end up going for further help, they're going to need a minimal reproducer, so I'd suggest working on something like that (especially something you could reproduce in a cloud provider like AWS or Digital Ocean to further distance the reproducer from your current environment to help remove variables).


chore : change default chain id to 31337

Changes discussed in #1431.
Should the enum in ethers-rs be updated to include 31337 as a second dev chain or to replace the current one ?
That would also impact the implementation of enable_for_chain_id()

This breaks compatibility with DappTools and might break some people's tests. If we want to go for this now, I think we should batch it with some other breaking changes like changing the default block.number and block.timestamp to 1 instead of 0. wdyt @gakonst?

@onbjerg since Dapp appears to be less relevant and the test will not asses parity if the block.number and block.timestamp change, i suggest renaming DappToolsParityTest to ContractEnvironementTest (or something along those lines), also enables to bring back the chain_id assertion. Or maybe we can turn it into HardhatParityTest ?
@mattsse to clarify the thing you want as a constant is the dev chain id ?

Looking at our integration tests, DRAI should be safe because it uses chainId, but it will break RAI because it uses 99, so maybe we should make a PR to RAI tests to use chainId instead of hardcoding 99 here.

@onbjerg since Dapp appears to be less relevant and the test will not asses parity if the block.number and block.timestamp change, i suggest renaming DappToolsParityTest to ContractEnvironementTest (or something along those lines), also enables to bring back the chain_id assertion. Or maybe we can turn it into HardhatParityTest ?
@mattsse to clarify the thing you want as a constant is the dev chain id ?

I think ContractEnvironmentTest makes sense, and then adding back the assertions for chain ID and so on that were removed

LMK what you think about my last commit, is it as an appropriate place to fix dapptools config ?
Should we also change block difficulty to 1 while we are at it ?

Just to be clear, why was block_timestamp default changed to 1? For parity with hardhat?

Using zero is just a bad default because it results in some edge cases. For example when defaulting to zero, you can't multiply it by a value, or subtract 1 from it, which results in unexpected behavior in tests

OK. Is there a place I should be looking to track this type of breaking change?

I think we'll eventually start publishing clearer changelogs, for now the best bet is tracking the Github. Realize this is not a great answer, so appreciate the understanding.


Default ports in Blazor tutorial blocked  by Chrome/Edge browser and/or AVG antivirus

Problem encountered on https://dotnet.microsoft.com/en-us/learn/aspnet/blazor-tutorial/run#
Operating System: windows10, 21H1, 19043.1586
Chrome, Edge or possibly my antivirus (Avg) throw an "ERR_CONNECTION_REFUSED" or "ERR_UNSAFE_PORT" when trying to use the default port used in the Blazor tutorial.
Suggest a little bit more help information on dealing with this in the tutorial ?, or selecting a more friendly port setting ?. I edited the default port in "C:\BlazorApp\Properties\launchSettings.json to 8080, just to run the tutorial, all was good for the demo.

CC. @mairaw


Enables a disabled test

Fixes https://github.com/microsoft/azuredatastudio/issues/6429

Coverage decreased (-0.03%) to 34.542% when pulling eaf6a9a3e00a3b178646b31801f20b40246ef248 on amir/azureAuth/enableDisabledTest into a7110d89160e25cf914030dd467f3d85c0292692 on master.

Merging this since its just adding more tests.


Redundant status code emits?

Note that this isn't an issue with the code, merely a bit of a comprehension difficulty.
I'm sure it isn't harmful to apply the status code repeatedly - but unless it's meaningful, it's probably confusing more than it is helpful to a person reading the code?

It's to fix a subtle PHP issue where it overrides the status code when certain headers are emitted: https://github.com/zendframework/zend-diactoros/pull/273

Yes, I understand the reason, but according to @lcobucci, merely reversing the two lines fixes it.
My question is, is it really necessary to pass the status-code for every individual header-line?
From the rest of the comments, I expect the answer is no?
If I understand correctly, you're defensively setting the status code in both places, in case somebody were to think it's a good idea to change the call order in the other function someday?
(This isn't meant as a criticism or anything - I am genuinely trying to understand how this works.)

@mindplay-dk you're correct when you say that only changing the order would address the issue. I opted to go with the same approach as symfony/http-foundation does to indeed be more defensive.
I've tried to explain that in the commit messages but reading them now I realise that the explanation could have been better. Sorry about the confusion :sweat_smile:

@lcobucci thanks, no problem :-)
(I personally wouldn't have done it if it wasn't necessary - most likely, I would have chosen to simply fold the status line and header emits into a single method, so that the order can't be accidentally changed. In my opinion, doing unnecessary things only raises questions or creates confusion. Just my opinion.)


Fix podman rm to have correct exit codes

If you attempt to remove a running container is it supposed to exit with
2
If you attempt to remove a non existing container is is supposed to exit with
1
Signed-off-by: Daniel J Walsh<EMAIL_ADDRESS>

/lgtm


Standardize sample projects, Part 2

##[error]C:\Program Files\dotnet\sdk\5.0.100-preview.6.20325.9\Microsoft.Common.CurrentVersion.targets(2705,5): error : MSB4803: The task "ResolveComReference" is not supported on the .NET Core version of MSBuild. Please use the .NET Framework version of MSBuild. See https://aka.ms/msbuild/MSB4803 for further details. [D:\a\samples\samples\core\extensions\ExcelDemo\ExcelDemo.csproj]
##[error]C:\Program Files\dotnet\sdk\5.0.100-preview.6.20325.9\Microsoft.Common.CurrentVersion.targets(2705,5): error : MSB4803: The task "ResolveComReference" is not supported on the .NET Core version of MSBuild. Please use the .NET Framework version of MSBuild. See https://aka.ms/msbuild/MSB4803 for further details. [D:\a\samples\samples\core\extensions\VisioDemo\VisioDemo.csproj]

The project says "It is designed to work with .NET Core 3.0"...

##[error]D:\a\samples\samples\core\interop\pinvoke\marshaling\src\MarshalingSampleNative\MarshalingSampleNative.csproj(28,5): error MSB3073: The command "cl.exe MarshalingSampleNative.cpp /I inc /D WINDOWS /EHsc /Od /GS /sdl /Zi /Fo"D:\a\samples\samples\core\interop\pinvoke\marshaling\bin/Debug\" /Fd"D:\a\samples\samples\core\interop\pinvoke\marshaling\bin/Debug\MarshalingSampleNative.pdb" /link ole32.lib /DLL /out:"D:\a\samples\samples\core\interop\pinvoke\marshaling\bin/Debug\MarshalingSampleNative.dll"" exited with code 9009.
##[error]D:\a\samples\samples\csharp\roslyn-sdk\Tutorials\MakeConst\MakeConst.Vsix\MakeConst.Vsix.csproj(94,3): error MSB4019: The imported project "C:\Program Files\dotnet\sdk\5.0.100-preview.6.20325.9\Microsoft\VisualStudio\v16.0\VSSDK\Microsoft.VsSDK.targets" was not found. Confirm that the expression in the Import declaration "C:\Program Files\dotnet\sdk\5.0.100-preview.6.20325.9\Microsoft\VisualStudio\v16.0\VSSDK\Microsoft.VsSDK.targets" is correct, and that the file exists on disk.

Environment issues.

##[error]C:\Program Files\dotnet\sdk\5.0.100-preview.6.20325.9\Microsoft.Common.CurrentVersion.targets(3036,5): error MSB4216: Could not run the "GenerateResource" task because MSBuild could not create or connect to a task host with runtime "CLR4" and architecture "x86".  Please ensure that (1) the requested runtime and/or architecture are available on the machine, and (2) that the required executable "C:\Program Files\dotnet\sdk\5.0.100-preview.6.20325.9\MSBuild.exe" exists and can be run. [D:\a\samples\samples\wpf\WPF-WinRT\WPF-WinRT-NetFx\WPF-WinRT-NetFx.csproj]
##[error]C:\Program Files\dotnet\sdk\5.0.100-preview.6.20325.9\Microsoft.Common.CurrentVersion.targets(3058,7): error MSB4028: The "GenerateResource" task's outputs could not be retrieved from the "FilesWritten" parameter. Object does not match target type. [D:\a\samples\samples\wpf\WPF-WinRT\WPF-WinRT-NetFx\WPF-WinRT-NetFx.csproj]

What?

ping @adegeo to review and assess CI issues.

closing as stale.
We like this idea, but it has grown old enough that starting again is likely the faster path.

closing as stale.
We like this idea, but it has grown old enough that starting again is likely the faster path.


Allow specifying parameter names as single strings in Python

Avoids the somewhat arbitrary "set name" vs "parameter name" distinction from the Python side. This will probably break #24, so that should probably be rebased + merged first.

Can you use -> as separator? That looks clearer to me, and is also what is used in the comments of I-EMIC in several places I believe (there it is "List"->"List 2"->"Var", but I don't think we need the quotes)

"->" is much better than "?"

@Sbte suggests to merge this first, ok to merge?

I think -> as separator should be fairly easy. If you give me a sec I'll see if I can change that now.


Does smithy generates the swagger definitions based on the AWS SDK

AWS SDK for various resource types are defined at https://github.com/aws/aws-sdk-net/tree/master/generator/ServiceModels.
Is it possible to take this as a source and produce swagger definitions?
Looking at the https://github.com/aws/aws-sdk-net/issues/1619 issue, the SDKs are generated based on the smithy tool.

Yes, Smithy can be used to generate OpenAPI (Swagger) specs. You can find a guide on Smithy to OpenAPI conversion here: https://smithy.io/2.0/guides/converting-to-openapi.html

No, we don’t produce OpenAPI models for AWS because the format is too different from Smithy, the model we use to describe services. See also https://github.com/awslabs/smithy/issues/1701#issuecomment-1499106125


Question: Risks of omitting the body in the fingerprint?

I hope it's okay to use an issue for a question like this...

Hypothesis: In theory, the idempotency key (combined with the path) should suffice to make a POST request unique.
Of course, this depends on how the client generates this key. In our case, the client is submitting offline-generated resources to the server. These resources have local UUIDs, which we use as key.
In our analysis, we discovered that it could be possible for the client to make further changes to an offline-only resource after a first unsuccessful request, which would mean the body would look different when retrying, i.e. sending a second request. If the request body is part of the fingerprint, this would no longer be de-duplicated, potentially resulting in a duplicate on the server (because the first request actually succeeded, but the client did not receive the response).
We now excluded this case: edits to resources are only possible a) before the first request and b) once we know for sure that the server has received the data.
The reason why we'd like to omit the request body from the fingerprint: It means the client has to jump through fewer hoops to ensure that the request bodies are serialized deterministically (ordering of keys in JSON objects, as well as objects in unordered lists). So we're trying to decide between two constraints the client has to fulfill:

deterministic request body serialization
preventing edits to resources between first request and first successful response

Because the second option also means less storage needs and complexity on the server (okay, it's encapsulated in the gem), we're leaning towards omitting the request body from the fingerprint.
Do you see any danger with that? Am I missing any other important aspect for why it's needed?

Of course it is fine to discuss things like this, no worries.
The reason why the fingerprint is injectable in the configuration is exactly for things like these. For example, you might want to honor only the idempotency key and nothing else. Or you might want to honor the idempotency key + the authentication. That decision is up to you.
The obvious use case with idempo is of course protecting from retries with the same request body. But you are absolutely free to make a different choice there.
If your concern is deterministic request body serialization, you can parse the request body inside the fingerprint handling proc, re-serialize it in a "canonical" format that you know is correct (lexicographically sorted keys, for example), and calculate the fingerprint off of that.
I don't really see any risks as such. The only risk I am aware of is that multiple clients (or: multiple users/principals) use the same idempotency keys and may access each other's responses. This is why the fingerprint code includes the authorization header. But again: this might very well not be a concern for you, so all doors are open there.

Cool, thank you very much for your response! 💚

If your concern is deterministic request body serialization, you can parse the request body inside the fingerprint handling proc, re-serialize it in a "canonical" format that you know is correct (lexicographically sorted keys, for example), and calculate the fingerprint off of that.

True, that would also be a good solution with less complexity on the client side.
As I see no downside given our context (UUID keys, plus we still include the authorization header), I'll go for simplicity and will completely omit the request body (even a canonical one).
Thanks again!


python312Packages.twilio: 9.2.1 -> 9.2.3

Diff: https://github.com/twilio/twilio-python/compare/refs/tags/9.2.1...9.2.3
Changelog: https://github.com/twilio/twilio-python/blob/9.2.3/CHANGES.md
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 324312 run on x86_64-linux 1

6 packages built:

authentik
home-assistant-component-tests.twilio
python311Packages.twilio
python311Packages.twilio.dist
python312Packages.twilio
python312Packages.twilio.dist


:sparkles: driver / http / helpers / PATCH method

Pull Request Test Coverage Report for Build 2197

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 95.267%

Totals

Change from base Build 2191:
0.0%

Covered Lines:
315

Relevant Lines:
326

💛  - Coveralls


Updated the package for trace analytics plugins

Description
Updates the package for trace analytics plugins to org.opensearch.dataprepper.
Issues Resolved
None, but partially resolves #344
Check List

[ ] New functionality includes testing.
[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[x] Commits are signed with a real name per the DCO

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

Codecov Report

Merging #1810 (e8826d2) into main (27e39d2) will decrease coverage by 0.04%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##               main    #1810      +/-   ##
============================================
- Coverage     93.94%   93.89%   -0.05%
  Complexity     1472     1472
============================================
  Files           188      188
  Lines          4307     4307
  Branches        355      355
============================================
- Hits           4046     4044       -2
- Misses          177      179       +2
  Partials         84       84

Impacted Files
Coverage Δ

...rwarder/discovery/AwsCloudMapPeerListProvider.java
92.59% <0.00%> (-2.47%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Quagga: Error when redistributing more than one source

@fabianfrz I tried to redistribute multiple sources but I always get a:

No matter which values I choose, it's only when theres mor than one.
Do you have any clue?
Thanks

this looks like there has been a character sent, which is not a valid option of the list. Is a wrong character in the list? Maybe a special char?

It's picked from here:
https://github.com/opnsense/plugins/blob/master/net/quagga/src/opnsense/mvc/app/models/OPNsense/Quagga/OSPF.xml#L25-L37
The problem is, I can select every entry if I only select one. But when a second one is added I get the error

@fabianfrz When I change the FieldType to CSV and type in e.g. kernel and static manually it works.
I'm not sure if OptionField really allows/accpets Y?

@mimugmail If it fixes the issue, you can create a pull request and I will merge it.

Ok, can I add it to #186 ? But what happens to existing installations when the field type in the model changes?

@mimugmail If they are compatible, nothing happens but if they are not, the validation will fail so the user has to change it. In such a case a migration needs to be created.

@fabianfrz Since the values wont change this should be fine.
Can I rename #186 and add the change for BGP and OSPF to it (perhaps also RIP)?

Yes, you should be able to rename it (click edit right of the title)

@fabianfrz This one fixes the issue, so no change is needed:
https://github.com/opnsense/core/commit/ac75ef6f10665b495f4d7503dc05dc804d63a061