text:
'Invalid file access property list id' on File creation [Windows with PyO3]

Hello,
We are writing a program using Python and Rust with PyO3. It is working fine on Ubuntu but is throwing an exception at runtime on Windows when calling File::Create with File or FileBuilder.
Here is the line that causing issue : https://github.com/betagouv/new-aglae-data-converter/blob/40981cf1853f41cad55d6d950bdeb935036f10d8/src/converter/mod.rs#L165
The issue may or may not be directly related to hdf5-rust but maybe you will have an idea of where the issue is coming from. I looked around and tried many things (like HDF5 changing versions or building on Windows Server) but I am still facing this issue. It might be related to https://github.com/aldanor/hdf5-rust/issues/195.
Let me know if you need more information. I can provide you with test data if you feel like doing some exploring and running the program.
Versions
Windows 10
rustc 1.68.2
hdf5-rust 0.8.1
Compiled against HDF5 1.10.10
Steps to compile and run

With HDF5 1.10.10 installed, run poetry install to install python deps
Build crate & make it available for python : poetry run maturin develop --release
Run it : poetry run .\new_aglae_data_converter\converter.py ...

Backtrace
python .\new_aglae_data_converter\converter.py -d c:\Users\witol\Downloads\lst_globals_and_std\lst_globals_and_std -o c:\Users\witol\Downloads\lst_globals_and_std -e lst globals -c c:\Users\witol\Documents\Dev\new-aglae-data-converter\lst_config.yml
INFO:__main__:Reading from : c:\Users\witol\Downloads\lst_globals_and_std\lst_globals_and_std
INFO:__main__:Saving files to : c:\Users\witol\Downloads\lst_globals_and_std
INFO:globals.converter:Starting reading files...
INFO:lst.converter:Reading from: c:\Users\witol\Downloads\lst_globals_and_std\lst_globals_and_std\lst\20230227_0002_Std_SASHI_IBA.lst
INFO:lstrs.converter:File to parse: "c:\\Users\\witol\\Downloads\\lst_globals_and_std\\lst_globals_and_std\\lst\\20230227_0002_Std_SASHI_IBA.lst"INFO:lstrs.converter:Config used: LstConfig { x: 256, y: 512, detectors: {"GAMMA": Detector { adc: 32, channels: 4096 }, "GAMMA_20": Detector { adc: 1024, channels: 4096 }, "HE1": Detector { adc: 1, channels: 2048 }, "HE2": Detector { adc: 2, channels: 2048 }, "HE3": Detector { adc: 4, channels: 2048 }, "HE4": Detector { adc: 8, channels: 2048 }, "LE0": Detector { adc: 16, channels: 2048 }, "RBS": Detector { adc: 64, channels: 512
}}, computed_detectors: {"HE13": ["HE1", "HE2", "HE3"], "HE10": ["HE1", "HE2", "HE3", "HE4"], "HE12": ["HE3", "HE4"], "HE11": ["HE1", "HE2"]}, adcs: [1, 2, 4, 8, 16, 32, 64, 256, 512, 1024] }
INFO:lstrs.converter:Map size: MapSize { width: 1000, height: 1000, pixel_size_width: 25, pixel_size_height: 25, pen_size: 500 }
INFO:lstrs.converter:Exp info: ExpInfo { particle: "Proton", beam_energy: "3000keV", le0_filter: "40mmHe", he1_filter: "100umAl", he2_filter: "OFF", he3_filter: "100umAl", he4_filter: "100umAl" }
⠒  [00:00:12] [############################################################################################################>] 21.82 MiB/21.83 MiBINFO:lstrs.converter:H5 File path : c:\Users\witol\Downloads\lst_globals_and_std\20230227_0002_Std_SASHI_IBA.hdf5
thread '<unnamed>' panicked at 'Couldn't create the file: Invalid file access property list id: 792633534417214901', src\converter\mod.rs:163:48
stack backtrace:
   0:     0x7ffce2a4d252 - std::backtrace_rs::backtrace::dbghelp::trace
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\..\..\backtrace\src\backtrace\dbghelp.rs:98
   1:     0x7ffce2a4d252 - std::backtrace_rs::backtrace::trace_unsynchronized
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\..\..\backtrace\src\backtrace\mod.rs:66
   2:     0x7ffce2a4d252 - std::sys_common::backtrace::_print_fmt
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\sys_common\backtrace.rs:65
   3:     0x7ffce2a4d252 - std::sys_common::backtrace::_print::impl$0::fmt
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\sys_common\backtrace.rs:44
   4:     0x7ffce2a633fb - core::fmt::write
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\core\src\fmt\mod.rs:1213
   5:     0x7ffce2a496ea - std::io::Write::write_fmt<std::sys::windows::stdio::Stderr>
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\io\mod.rs:1682
   6:     0x7ffce2a4cf9b - std::sys_common::backtrace::_print
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\sys_common\backtrace.rs:47
   7:     0x7ffce2a4cf9b - std::sys_common::backtrace::print
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\sys_common\backtrace.rs:34
   8:     0x7ffce2a4f8c9 - std::panicking::default_hook::closure$1
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:267
   9:     0x7ffce2a4f54b - std::panicking::default_hook
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:286
  10:     0x7ffce2a50160 - std::panicking::rust_panic_with_hook
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:688
  11:     0x7ffce2a4feee - std::panicking::begin_panic_handler::closure$0
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:579
  12:     0x7ffce2a4dc6f - std::sys_common::backtrace::__rust_end_short_backtrace<std::panicking::begin_panic_handler::closure_env$0,never$>
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\sys_common\backtrace.rs:137
  13:     0x7ffce2a4fba0 - std::panicking::begin_panic_handler
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:575
  14:     0x7ffce2a71a45 - core::panicking::panic_fmt
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\core\src\panicking.rs:64
  15:     0x7ffce2a71f66 - core::result::unwrap_failed
                               at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\core\src\result.rs:1790
  16:     0x7ffce29e7a4d - lstrs::converter::parse_lst::h300384f279ddd499
  17:     0x7ffce29ded40 - <alloc::collections::btree::map::BTreeMap<K,V,A> as core::ops::drop::Drop>::drop::hac6246eea85e7b3c
  18:     0x7ffca455800a - PyObject_Str
  19:     0x7ffca4525c7a - PyEval_EvalFrameDefault
  20:     0x7ffca45201af - PyFunction_Vectorcall
  21:     0x7ffca4524e6d - PyEval_EvalFrameDefault
  22:     0x7ffca45201af - PyFunction_Vectorcall
  23:     0x7ffca451fa8b - PyFunction_Vectorcall
  24:     0x7ffca4528112 - PyEval_EvalFrameDefault
  25:     0x7ffca45201af - PyFunction_Vectorcall
  26:     0x7ffca45975f9 - PyEval_EvalCodeWithName
  27:     0x7ffca459753b - PyEval_EvalCodeEx
  28:     0x7ffca4597499 - PyEval_EvalCode
  29:     0x7ffca459709a - PyCodec_DecodeText
  30:     0x7ffca459701a - PyCodec_DecodeText
  31:     0x7ffca45c5097 - PyDict_DelItemString
  32:     0x7ffca45c4d3c - PyUnicode_WriteChar
  33:     0x7ffca45c590f - PyRun_SimpleFileExFlags
  34:     0x7ffca4603dac - PyRun_AnyFileExFlags
  35:     0x7ffca4603b82 - PyObject_GenericGetDict
  36:     0x7ffca45d8218 - Py_RunMain
  37:     0x7ffca45d80a1 - Py_RunMain
  38:     0x7ffca45d4b19 - Py_Main
  39:     0x7ff76c441254 - <unknown>
  40:     0x7ffd05cd7614 - BaseThreadInitThunk
  41:     0x7ffd06e626a1 - RtlUserThreadStart
Traceback (most recent call last):
  File "C:\Users\witol\Documents\Dev\new-aglae-data-converter\new_aglae_data_converter\converter.py", line 82, in <module>
    processed_files_cnt = convert(
  File "C:\Users\witol\Documents\Dev\new-aglae-data-converter\new_aglae_data_converter\converter.py", line 35, in convert
    processed_files_num += convert_lst_to_hdf5(data_path, output_path, lst_config_path)
  File "C:\Users\witol\Documents\Dev\new-aglae-data-converter\new_aglae_data_converter\lst\converter.py", line 33, in convert_lst_to_hdf5
    lstrs.parse_lst(str(lst_file.absolute()), str(output_path.absolute()), config)
pyo3_runtime.PanicException: Couldn't create the file: Invalid file access property list id: 792633534417214901

@wiwski Does this problem still occur? It would be pretty hard to help out unless you try to narrow it down, i.e. what does pyo3 have to do with it, and does it occur outside of pyo3 on the same machine in the same environment.

@aldanor I too am having this same issue though I am not using pyo3. It fails on the same call to create the file.

authors: aldanor trippalamb wiwski


text:
duplicate Id warning

I'm not sure if this is specifically an autoform problem, but I'm struggling to resolve the warning.  What's happening is this:
I have several Autoform fields on my page that I'm rendering from my schema.  Only one of them seems to cause the error shown in the screen shot below.  I've tried commenting out some of my other autoform options for other field in my schema to see if they were using a similar id but the warning remained.  For some reason, _id = 1 is the only one that causes the error.  If I comment out this option in my schema, the warning goes away.
Error in the console... it warning repeats 6 times on my console.  I'm not sure why.  Everything still behaves as it should, but I these warnings flooding my console can't be good.

The relevant schema for the field in my collection is shown below:

taxiQty: {

	type: Number,
	label: "Taxi Qty:",
	optional: true,
	autoform: {
		type: "select",
		options: function() {
			return [
			{label: "I don't need a taxi", value: 0},
			// If you comment the following line the warning goes away.
			{label: "I need a taxi for 1 person", value: 1},
			{label: "I need a taxi for 2 people", value: 2},
			{label: "I need a taxi for 3 people", value: 3},
			{label: "I need a taxi for 4 people", value: 4},
			{label: "I need a taxi for 5 people", value: 5},
			{label: "I need a taxi for 6 people", value: 6},
			{label: "I need a taxi for 7 people", value: 7},
			{label: "I need a taxi for 8 people", value: 8},
			{label: "I need a taxi for 9 people", value: 9},
			{label: "I need a taxi for 10 people", value: 10}
			];
		}
	}
}

In my HTML:

{{#autoForm collection="Bookings" id="taxiEntry"}}
{{> afQuickField name='taxiQty' id="taxiQty" label=false value=getTaxiQty}}
{{/autoForm}}

I handle the collection updates in a separate function.  Perhaps there is a way to assign unique ids to the autoform options without changing the value?

Awesome.  Thanks Eric!

source: gharchive/issue

repo: aldeed/meteor-autoform

license: MIT

license_type: permissive

license_source: github-api


text:
Support for bulk inserts

Does this package support bulk insert operations? I have an array of documents (with _id's) and I want to insert them with a single command, but it appears that this isn't supported.

This package supports whatever Meteor's mongo package supports. I don't think it supports bulk insert.

It does support bulk inserts. If I remove the schema for this collection Meteor inserts the documents from the array without an issue.

OK, then we should probably support them, too. It doesn't seem to be a documented feature, though.

@c316 see https://github.com/meteor/meteor/issues/1255#issuecomment-97276160
I will wait until Meteor officially supports this, but we can keep this issue open to track.

Any updates on this, I'm getting the error "Error: 0 is not allowed by the schema
" when trying to do a bulk insert, and it appears Meteor now fully supports Bulk inserts.

Agreed. Running into the same issue.

+1 on this one :)

Hi @aldeed is there an interim way for us to use bulk inserts? Need this.
Thanks for your help.

@myyellowshoe @nicooprat @SharadKumar
Way back in February I used the mikowals:batch-insert package to do batch insert. It worked (at least back then when I was using -v < 1.3), but I've since modified my database schema in favor of a more efficient structure that did not require batch inserting. It just wasn't performant, especially with Meteor.  Just my own experience though.

authors: SharadKumar aldeed bjones6 c316 myyellowshoe nicooprat

license: mit

license_source: bigquery


text:
🛑 Nitter.ir is down

In 179252e, Nitter.ir (https://nitter.ir) was down:

HTTP code: 404
Response time: 453 ms

Resolved: Nitter.ir is back up in be5950f.

repo: alefvanoon/Status


text:
🛑 Searx is down

In 5e80d6d, Searx (https://sx.alefvanoon.xyz) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Searx is back up in b8aa22a.


text:
Upgrade to Firecracker v1.3.0

https://github.com/firecracker-microvm/firecracker/releases/tag/v1.3.0

Done in #356

repo: aleph-im/aleph-vm


text:
Feature: Keep a VM ready to accept another call

After every execution, a VM is kept running for in case the same function gets called again.
The VM is stopped if no call is made during a configurable duration.

Fixes #5

source: gharchive/pull-request


text:
After migrating to a turborepo project, an error occurs after the application is installed and launched,but it's basically fine in development mode.

Describe the bug
The relevant configuration before the project was migrated：

electron.vite.config.ts

electron-builder.yml

.npmrc

Some adjustments made after the project migration, and some related configurations in turborepo

Steps for reproducing the problem

copy the electron project directly to the turborepo project's apps/mindcraft-app ,name in package.json of electron project is medcraft-desktop-reborn.

use rm -rf node_modules in the turborepo root directory to remove all sub-project dependencies.then use pnpm install to install all project dependencies, including the electron project.

started electron app development mode using pnpm turbo run dev -filter=medcraft-desktop-reborn. everything works fine in development mode.

use pnpm turbo build:mac -filter=medcraft-desktop-reborn to build the installer, the build process reported no errors. When the installation is complete and the application is launched, an error popup appears, as shown below. The package hints for the error are electron-store, electron-updater. There is a strange phenomenon: the size of the app moved to /Applications has become significantly smaller, the previous one had more than 400MB, and now it's only more than 300MB.

based on the error message, I found the relevant answer 35.I took the advice and externalized some commonjs packages in the main module of elecron.vite.config.ts and then got the different error,as shown below. so I am particularly confused now. Is the problem I encountered related to the management method of pnpm workspace package? should I not adopt the answer to the above issue?

The post should have been posted in the discussion forum, but I see that the answers are not very positive over there, so all help is sought in the issue forum, so please forgive me.
Electron-Vite Version
2.0.0
Electron Version
28.2.0
Vite Version
5.0.12
Validations

[X] Follow the Code of Conduct.
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.

@picasuo did you find a solution? I am thinking of using electron-vite with turborepo as well

authors: hyusetiawan picasuo


text:
EPERM on Windows 10

Install is not working on Windows 10 64:

Disclaimer: I don't have access to a Windows machine. Although ied should work on Windows, it hasn't been tested on it.
ied heavily relies on symlinks. It looks like you don't have the correct permissions to create those.

Windows requires Admin privileges to create symlinks. Silly but that's the way it is.

That may be the reason for the elevated env requirement: https://en.wikipedia.org/wiki/Symlink_race.
If you didn't know about it already, you can quite easily run programs in the elevated mode by selecting "Run as administrator" from the context menu.

Uhhhh... that sucks. Any hack around this? If not, we should at least warn the user why it didn't work...

I think I've found quite a painless solution - powershell.
const ps = require('node-powershell');

ps('Start-Process -Verb runAs cmd "/C","mklink /D D:\link d:\source"');

There was a prompt asking for permission and afterwards a link was created.

I've been experimenting with this on Windows and came to a conclusion: this can't be done in a symlink by symlink fashion.
The problem is, powershell has to be launched in order to launch cmd in the elevated mode (which prompts the user). Each time cmd is launched, there is a prompt. That means a lot of prompts for one install.
This is caused by powershell being unable to launch cmd "in the same window" (so that we'd be able to  issue the mklink command directly) and with the "runas" verb (which gives us the elevated mode).
So I suggest doing one of these:

warn Windows users when elevated mode is not detected
create a little bootstrapping script, which will detect if the program is running in an elevated mode, and if not, then launch ied with all arguments through powershell in the elevated mode (and then exit) - this will add an overhead of a couple of ms + MBs needed for a new process, but it should be small compared to the main program

+1 on this issue.... I'm getting it too.

@mgol, perhaps this is somehow a separate issue, but the issue persists for me even running as administrator. It bugs out a lot further down in the process than if I was running it as a regular user, but I'm still unable to complete the installation.

I also get an issue further down the track when running as administrator:
λ ied install
[==============================] 100.00%C:\Users\jschreuder\AppData\Roaming\npm\node_modules\ied\bin\cmd.js:57
          throw err
          ^

Error: EPERM: operation not permitted, rename 'C:\Projects\Advantage-Git\AdVantage\Bcc.AdVantage.Web\node_modules\.tmp\7e13da55-f351-455e-9384-d1886cb2351c' -> 'C:\Projects\Advantage-Git\AdVantage\Bcc.AdVantage.Web\node_modules\3cd42b2bbd6f6c52977ffaedc5d9c3362057e232'
    at Error (native)

@alexanderGugel I think I can get around the permission issue using junctions on Windows. Basically just passing the type 'junction' into forceSymlink() seems to remove the need for an Admin command prompt.
Are you interested in me putting up a PR with this change? At the moment I've just hardcoded it into expose.js, install.js and link.js, like this for example:
var type = process.platform !== 'win32' ? 'file' : 'junction'
//...
forceSymlink(srcPath, dstPath, type, cb)

@JoshSchreuder There is an 'isWindows' check in config.js you could probably use.

@JoshSchreuder There is an 'isWindows' check in config.js you could probably use.

Thanks, I've put up a PR which uses the check.

although I still get the rename error I noted above intermittently - will investigate

Did a bit of digging into this and it's potentially an antivirus thing (ughhhhhh), npm have 'solved' it like so:
https://github.com/npm/npm/commit/beeb7fd82e3cc543a9911fe87ec096f8eed29e7a

Ah that explains why ied didn't work for me on Windows. I'll try as administrator.
FYI, I ran into a similar problem with one of my modules recently, and my approach was to make "pointer" modules that look something like this:
package.json:
{
    "name": "{{modulename}}",
    "private": true,
    "version": "{{moduleversion}}"
}

index.js:
module.exports = require(__dirname + '/' + '{{relative/path/to/actual/module}}')

Obviously it's not as general as proper symlink because it only works for modules, but I thought I'd mention it just in case.

@JoshSchreuder, I run into the rename thing occasionally and I'm definitely not running any antivirus software, or anything of that sort. I'll take some time today and try to dig into it more. It happens fairly consistently on the same folders too, which is interesting.

You guys get symlink problems, I get rename issues :frowning:
[==============================] 100.00%C:\Users\<xxxx>\Roaming\npm\node_modules\ied\bin\cmd.js:57
          throw err
          ^

Error: EPERM: operation not permitted, rename 'D:\Projects\<xxxx>\node_modules\.tmp\c1510493-3b61-4eaf-b5a7-743438e26d4a' -> 'D:\Projects<xxxx>\node_modules\f7b6cee64aabea6944b2a679023d533e40aebfdc'
    at Error (native)

authors: AMorporkian JLMorales JoshSchreuder alexanderGugel fatfisz mzgol nazwa victorwpbastos wmhilton

repo: alexanderGugel/ied


text:
returning NULL vs empty Bits obj

Decide whichever should be returned on error.

Wrong project. https://github.com/alexandernst/cpp-bitstring/issues/12

repo: alexandernst/memory-dumper

license: unlicense


text:
Failed to get plugin dashboards

I connected the Plugin to Zabbix and tested it, but when I select dashboard, I got the error "Failed to get plugin dashboards"
Do you know how to fix it ?
Grafana v9.5.2
Zabbix 6.4.3
Grafana-Zabbix Plugin 4.3.1

i have same issue too.

Same issue

Same issue too
Grafana v9.5.3
Grafana-Zabbix Plugin 4.3.1
Zabbix 6.0.18 (LTS)

Found my issue.
I just added manually a new dashboard and select the Zabbix the Data source to add new dashboard.

authors: Jimiwho ninidas saeednaimi sitoplex

repo: alexanderzobnin/grafana-zabbix


text:
Unity.Abstractions Dependency (again)

Since the UseUnityContainer extension takes a IUnityContainer as an argument, I need to declare my UnityConatiner as that interface. But I'm getting the error, that version v3.3.1 of Unity.Abstractions needs to be referenced to use the IUnityContainer interface.

Nevermind, I just had weird references in my project.


text:
New release

Hi guys,
Could you please release a new version of exectimer (2.2.2) with last fix (adding a license to package.json)?

Sorry for the long wait. A new version is published now.

authors: VadymMakhonin alexandrusavin

repo: alexandrusavin/exectimer


text:
unable to fetch javadoc or sources

$ cli/target/pack/bin/coursier fetch --javadoc --sources commons-codec:commons-codec:1.6
gives empty result

This is fixed in the current master. 1.0.0-M15-2 about to be released with the fix. Feel free to re-open if you still face this issue.

authors: alexarchambault wisechengyi

repo: alexarchambault/coursier


text:
Update mill-scalalib to 0.11.0-M10

About this PR
📦 Updates com.lihaoyi:mill-scalalib from 0.11.0-M8 to 0.11.0-M10
📜 GitHub Release Notes - Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.lihaoyi", artifactId = "mill-scalalib" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.lihaoyi", artifactId = "mill-scalalib" }
}]

labels: library-update, early-semver-pre-release, semver-spec-pre-release, commit-count:1

Superseded by #42.

repo: alexarchambault/mill-native-image


text:
Update examples & docs

Update example app project by adding:

option to enable and disable ringtone for the upload task
binary file upload capability

Add server-side demo implementations which supports binary file upload.
Update README.md examples for multipart upload and binary upload.

I plan to send these #50 but I am still polishing some stuff on my side (JavaScript mostly). When do you plan to release 1.4?

@PanayotCankov there's no release schedule, my policy is to release a new version when it's stable and well documented

authors: PanayotCankov alexbbb

repo: alexbbb/android-upload-service


text:
Fix default port in the main script.

Different port in main and config files. It's changed to 3256.

But what's the reason?

@seriyps
https://github.com/alexbers/mtprotoproxy/blob/master/config.py#L1
https://github.com/alexbers/mtprotoproxy/blob/master/mtprotoproxy.py#L103

Merged, thanks.

authors: Allineer alexbers seriyps

repo: alexbers/mtprotoproxy


text:
What do you think of the idea of moving to TypeScript?

Hello,
A quick question, I am asking myself. What do you think of a move to TypeScript?

AFAIK, you use Atom who support TypeScript.
You are coming from a C# background too, the TS's syntax should easier for both of us.
TypeScript is widely use and a popular transpiler.
TS support ES6 features with some ES7 feature like async/await.
Since we can use it with plain, the migration will be smooth.
TS works well with nodejs.
A port will be simpler to do now.
AFAIK, you dont have a project with it, base16-builder could be the first!

A stackoverflow talk about TypeScript.

I have to admit, the prospect of using TS is inciting, but I want to continue using Babel for the following reasons:

I already spent some time setting up the Babel workflow
I suspect most contributors will find Babel less intimdidating than TS
I recently wrote an article on Babel that I can share with new contributors
I want to learn more about Babel
Babel has some cool experimental plugins

I appreciate you taking the time to make your case but I would like to continue using Babel here.

I suspect most contributors will find Babel less intimdidating than TS

JS is a weird place with too many tool, lib, framework etc. It is a feat and a flaw. I miss the stability of .NET. TypeScript feel almost like home when you come from C#, Java, C++, etc. This discussion is closed. For now, lets go for Babel. Good to learn something new. :)

authors: alexbooker aloisdg


text:
[BUG] Wrong fee-rate on fund with multiple utxos

I've build a transaction with 2 taproot input and 1 segwit output with this command but the resulted fee rate it's lower than asked
bos fund <address> max --fee-rate 1.9 --select-utxos

fractional arguments aren't interpreted because LND accepts int values on a per vbyte level for fund psbt

Can I suggest to add a warning or an error in this case?

It has been added in the latest version

repo: alexbosworth/balanceofsatoshis


text:
Fix tooltips remaining after hiding the gutter

This fixes issue #170.

@mariyan-borisov thanks for stepping up and getting this done!

authors: alexcorre mariyan-borisov

repo: alexcorre/git-blame


text:
Wire up rustdoc hyperlinks

Most of the `backticked` words in the flate2 rustdoc should really be hyperlinks.

Follow the style used in std.

authors: brson dtolnay


text:
Introduce yield_after combinator for improving fairness

This PR is an attempt to create a yield_after(u64) combinator that limits the number of polls on a stream before it resubmits the task. The main purpose of this combinator to improve fairness if there are multiple competing streams for the same execution resources (especially in event loops) and some of the streams can run for a long time without returning Async::NotReady.
Currently this is PR is far from ready, because two things are unclear for me:

the purpose of Sink adapters (like in the most similar combinator, take.rs)
how to test this properly, since task::park will panic if there is no Task available because the stream has not been submitted anywhere, and I want to unit test the poll() method somehow. Any pointers?

Do you think this combinator is worthy for consideration? Does it actually work as I hope or are there hidden pitfalls of this approach?

Seems like a neat combinator, thanks! I wonder if we want to perhaps consider adding a similar one to futures as well? I'm also curious if we could perhaps think of a more evocative name than yield_after, not that I'm exactly brimming with ideas in that department...

This could be useful to quickly fix a bug but, IMO, fairness is the event loop's job. For example, select and friends currently poll in a round-robin fashion. This seems like a hack to get around unfair scheduling.
However, it might be useful to implement some form of yield combinator for Futures (filed under #353 to avoid getting off topic).

Seems like a neat combinator, thanks! I wonder if we want to perhaps consider adding a similar one to futures as well?

Hm, I was thinking this makes no sense as a future can only return one Ready in a poll-cycle but I see now in #353# that it can still make sense to add preemption points to a larger chain. I can attempt to add that.

This could be useful to quickly fix a bug but, IMO, fairness is the event loop's job. For example, select and friends currently poll in a round-robin fashion. This seems like a hack to get around unfair scheduling.

Unfortunately this is not true. This is not a hack to get around unfair scheduling but it is a workaround to get around limitations of the current architecture. The basic issue is that many (most?) streams are submitted to an executor as a Future where the Future itself drives the stream to completion. That leaves no preemption point for the executor to intervene. As an example, look into the loop in the fold implementation. The executor has no way to preempt that loop. This combinator would allow preemption to happen. Of course ideally the executor should be able to preempt without an explicit combinator but I don't see how that is possible without all (or most of) the combinators cooperating somehow (like reading a counter from the associated Task and returning NotReady when the counter is zero, and decrementing the counter on every Ready).

One option can be that Task gains another method preempt() -> Boolean which is up to the executor to handle or ignore. This means that all operators would need likely a macro, called as the first thing in poll() and which expands to something like if task.yield() { return NotReady }. Feels a bit brittle, but at least a start for brainstorming.

The basic issue is that many (most?) streams are submitted to an executor as a Future where the Future itself drives the stream to completion.

Ah, you mean like a my_stream().for_each(...)? I see what you mean. In that case, I'm worried that forgetting to insert a yield will be a foot gun. I've raised #354 to discuss the design space a bit.

Ah, you mean like a my_stream().for_each(...)?

That is one example yes. Please note that this is not limited to futures backed by streams. The key is to have a "divergent" section, i.e. one that can make unbounded progress (or just long progress) without any event on another boundary (in this case the outermost poll). For example if you have a short stream of userIds, which you then flatten into a longer stream of friends of each of those users, then you filter down those to a few elements then you can have lots of internal "chit-chat" between the expanding and filtering phases without hitting the outermost poll. This might be a contrived example, but if there is any chance in the future that this library will support feedback cycles in streams than this will be no longer a weird edge case but a problem that needs to be tackled. But yes, we are talking about the same thing :)
As for this ticket, I am still not sure about the role of the Sink thingies and what should I supposed to to there. Also, another question is how to raise an error on an invalid argument, like passing zero to this combinator. Should it panic?

With all the various discussion on yielding I'm now tempted to hold off on this for now until we get a chance to have a broader discussion about what we're going to do in that domain. We can perhaps be conservative for 0.1 and consider deeper changes for 0.2, but I just want to make sure we're not too hasty on the lower layers.

Given that task wakeup is unpredictable, I'm not sure if the u64 argument provides much additional value. Secondly, I am not sure if this makes sense as a combinator vs. a helper fn that provides does park().unpark() or which yields a Future<Item = ()> representing the yield.
Aka, I think that the yield concept is advanced enough to not be ideal as a fn on the trait.

Given that task wakeup is unpredictable, I'm not sure if the u64 argument provides much additional value.

All I can say that I have implemented and used this pattern (yielding after a count) on the JVM for different problems. Starving threadpools is very real. It is a significant percentage of our commercial support cases.   These counters+wakeup patterns many times improved latency last percentiles. I don't know if the combinator is the best approach, but you should take any chance you have to protect your threadpools if it is not a big cost.

@drewhk I never said anything against yielding :) Only that, in the case of futures, including a yield counter doesn't seem like it makes sense. Like, what would the reason be to have yield(5) vs. just a yield (and conditionally yield again). The issue is that there is no guarantee as to how long the task goes to sleep for. Spurious wake ups are to be expected, which makes something that implies precision seem confusing to me.

Only that, in the case of futures, including a yield counter doesn't seem like it makes sense.

I agree with that, but this PR is for the stream combinator, the Future combinator is another PR (https://github.com/alexcrichton/futures-rs/pull/359/files) done by @Stebalien, which does not take an u64 argument.

@drewhk by futures I meant this library (naming overload)

Well, so having the counter in the combinator is certainly not optimal, it is just that there is currently no other way given the current API. I would personally prefer a method, maybe called should_yield() -> Boolean that enables an operator to interface with the executor and then depending on the result either return NotReady or continue. It could be even neatly wrapped in a macro and then used either as the first statement in poll() or added to loop edges. The executor is clearly a better place to have these decisions as it can handle the whole Task together and make more educated decisions.

Spurious wake ups are to be expected, which makes something that implies precision seem confusing to me.

Spurious wakeups do not matter much as the operator here is implemented in terms of emitted elements, i.e. if the task suspends for any other reason, the counter is reset. In other words this counter only takes effect if there was a long period of actual work done without signalling NotReady. It establishes an upper bound of elements processed without NotReady but does not intervene if there were any parks. Of course a timer can be more "accurate", but more costly as well. In practice these counters served me well in the past and worked just as well as timers.

I propose moving the discussion to the discussion ticket https://github.com/alexcrichton/futures-rs/issues/354. I will close this PR for now as there is no clear consensus on how to proceed.

authors: Stebalien alexcrichton carllerche drewhk

repo: alexcrichton/futures-rs


text:
Provide TestHarness to make testing future / combinator implementations easier.

Depends on #597
This PR adds a new type: executor::TestHarness. This type is very similar to Spawn but is intended to be used from the context of tests. As such, it provides a slightly different API. While this functionality could be provided directly by Spawn, Spawn already has a fairly busy API surface and some of the capabilities of TestHarness doen't make as much sense when used in "real code".
This PR only provides the ability to wrap a Future for now, but at a later time, support for Stream and Sink can be added.
The idea would be for TestHarness<impl Stream> to provide:

impl Iterator
poll_next(&mut self) -> Poll<Option<Self::Item>, Self::Error>
wait_next_timeout(&mut self) -> Result<Option<Self::Item>, TimeoutError<Self::Error>>

And for TestHarness<impl Sink>:

try_send(&mut self, item: T::SinkItem) -> StartSend<T::SinkItem, T::SinkError>
send_timeout(&mut self, item: T::SinkItem) -> Result<(), SendTimeoutError<T::SinkItem, T::SinkError>>

Hm I'd imagine that if we want to make futures-based tests easier to write we could probably go farther? Maybe we could try to collect test-related helpers in a futures-test crate or something like that? (avoid exposing more surface area here)

authors: alexcrichton carllerche


text:
Support demangling the new Rust mangling scheme.

This PR complements rust-lang/rust#57967 (ideally, they should be reviewed/merged in tandem).
See https://github.com/rust-lang/rfcs/pull/2603#issuecomment-458410463 for details on the implemented mangling scheme.
Aside from testing on every symbol from a Rust stage1 build (of std, rustc and cargo), I've also confirmed this builds with Rust 1.6 (AFAICT the earliest stable version supporting #![no_std]).
There are some debatable decisions, such as the value of SMALL_PUNYCODE_LEN, or how to print certain details, I'm not sure whether this PR or the RFC is a good place to discuss those.
cc @nikomatsakis @michaelwoerister

@alexcrichton We want to land the PR soon, and I've updated the naming of the new mangling scheme from modern to v0 (see https://github.com/rust-lang/rust/pull/57967#issuecomment-463596992).
I don't think I want to change it any further now, so it should be fine to review now.

The code all here looks great to me, thanks again for this @eddyb!
My main comment would be that I don't really know how to verify the correctness of this or otherwise take a look at a reference somewhere. Is there reference documentation to put somewhere? Or otherwise could comments be inserted in the code namely around some match statements and such?
Other than that I think this is good to merge and publish!

@alexcrichton So https://github.com/rust-lang/rfcs/pull/2603#issuecomment-458410463 has a grammar for this mangling scheme, which @michaelwoerister added to the RFC itself, and I could put comments on relevant functions containing the respective grammar rules, if you think it would help.

As for correctness: this implementation was verified against an expected demangling (see the dump.rs file added by a commit, and removed by another, in https://github.com/rust-lang/rust/pull/57967), over std+rustc+Cargo (locally) and then all of crater. Some bugs were found, but mostly/only in the compiler side, IIRC.
Also, a C implementation (which we might want to host in this repo, not sure) was also verified against the stc+rustc+Cargo dataset (1M symbols), and found to produce identical results.

Ok that all sounds good to me, thanks!

authors: alexcrichton eddyb

repo: alexcrichton/rustc-demangle


text:
Update offset docs

The Offset docs added in #439 specify a range that is a little narrower than what is valid.  I'm not sure if it is really necessary to specify a specific range, but I think instead of guessing what might every be the largest value, just specify a large range (-23 to +23? -18 to +18 like java? or just specify what the range is in 2021?).
Original comment below:
It's very minor, but I happened to notice that these docs are slightly incorrect: this can be as large as +13 or even +14 https://en.wikipedia.org/wiki/UTC%2B14:00 for real timezones, on some Pacific islands.

A special mention for Chatham Islands during DST, where the offset is +13:45.
Originally posted by @huonw in https://github.com/alexcrichton/toml-rs/pull/439#discussion_r704900232

These points of view seem valid to me (for different reasons):

expand the offset range as much as necessary, but not further.
match Java's range if there is a good reason (but what is that good reason?)

If we specify a range, it would also be good to cite the TOML spec.
Follow-up questions:

What does the TOML spec say? (I don't recall finding clarify there, however when I wrote the docs for the offset range.)
What is the likelihood that the offset range will change? (My guess is it is very low.)

[TOML specifies  dates}(https://toml.io/en/v1.0.0#offset-date-time) conforming to  rfc3339.
Reading the RFC, section 5.6 provides ABNF syntax for date, time and datetime values, with or without offset. Relevant parts of the ABNF are:
   time-hour       = 2DIGIT  ; 00-23
   time-minute     = 2DIGIT  ; 00-59
   time-numoffset  = ("+" / "-") time-hour ":" time-minute
   time-offset     = "Z" / time-numoffset

meaning that offsets in the range -23:59 to 23:59 are accepted.
Having read sections 4.2, 4.3 and 5.6 of the RFC and searched for the word offset there seem to be no other restrictions.

authors: ehuss jaskij xpe

repo: alexcrichton/toml-rs


text:
Best way to combine high quality video with audio

Hi,
I'm currently experimenting with YouTubeKit. For my project, I need a high quality video with audio url. I don't know if it's intended, but always when I use .filterVideoAndAudio, it just gives me one stream and it's 360p. Besides that, that stream seems to be the only one running at decent download speed. All of the other streams take up to a few minutes to load, depending on the video length (based of my research I think it's because google is throttling it).
I also noticed that some of the higher quality streams are twice as long as the original video, the second half of the video nothing is happening.
Now I want to know if there is a method to get a video and audio stream in 1080p or higher? Is the 360p stream also in googles hand or is there another reason why the video is just loading with that low resolution?
I really like this project and I hope you can help me!

Do you want to download the videos or just stream it?
In case you want to stream: I was tinkering around with it a bit and you can find a "mostly" working implementation in feature/player-item.
I also want to support downloading with automatic merging and rate-limit avoidance, but no ETA on that ;)

Do you want to download the videos or just stream it?
In case you want to stream: I was tinkering around with it a bit and you can find a "mostly" working implementation in feature/player-item. I also want to support downloading with automatic merging and rate-limit avoidance, but no ETA on that ;)

Could you clarify what you mean by this? I am looking to stream high quality video and audio at the same time, as well.

There is no sample code yet. But basically you can use this branch like this:
let playerItem = try await YouTube(url: <your youtube url>).playerItem()
let player = AVPlayer(playerItem: playerItem)

You can also change the desired resolution in the playerItem() function call.
Keep in mind that it's not perfect yet and that the code might change. Especially, the playerItem() call can take quite long to complete unfortunately.

authors: alexeichhorn metroidmen scotland1912

repo: alexeichhorn/YouTubeKit


text:
Readers' RPi clusters

Readers' RPi clusters
Please comment here here with your name and URL to your cluster, plus any useful notes you have.
I'll then add it to the Readers' RPi clusters in the main README.
Alex
Join the #arm-and-pi channel on OpenFaaS Slack to chat with our community - https://docs.openfaas.com/community/

Hi @alexellis -
Link to my cluster: https://twitter.com/dnachman/status/1094419142948593664
Everything went relatively smoothly except for the dashboard deployment.  The pod was crashing/retrying. Eventually I went in to the logs and saw this:
kubectl logs pod/kubernetes-dashboard-head-7bc4868777-lzv9r -n kube-system 2019/02/10 16:41:21 Starting overwatch 2019/02/10 16:41:21 Using namespace: kube-system 2019/02/10 16:41:21 Using in-cluster config to connect to apiserver 2019/02/10 16:41:21 Using secret token for csrf signing 2019/02/10 16:41:21 Initializing csrf token from kubernetes-dashboard-csrf secret panic: secrets "kubernetes-dashboard-csrf" not found goroutine 1 [running]: github.com/kubernetes/dashboard/src/app/backend/client/csrf.(*csrfTokenManager).init(0x1f87250)     /home/travis/build/kubernetes/dashboard/.tmp/backend/src/github.com/kubernetes/dashboard/src/app/backend/client/csrf/manager.go:40 +0x2fc github.com/kubernetes/dashboard/src/app/backend/client/csrf.NewCsrfTokenManager(0xef9d40, 0x1fb4120, 0x1, 0xa5c9d4)     /home/travis/build/kubernetes/dashboard/.tmp/backend/src/github.com/kubernetes/dashboard/src/app/backend/client/csrf/manager.go:65 +0x4c github.com/kubernetes/dashboard/src/app/backend/client.(*clientManager).initCSRFKey(0x1f5a1e0)     /home/travis/build/kubernetes/dashboard/.tmp/backend/src/github.com/kubernetes/dashboard/src/app/backend/client/manager.go:362 +0x70 github.com/kubernetes/dashboard/src/app/backend/client.(*clientManager).init(0x1f5a1e0)     /home/travis/build/kubernetes/dashboard/.tmp/backend/src/github.com/kubernetes/dashboard/src/app/backend/client/manager.go:330 +0x34 github.com/kubernetes/dashboard/src/app/backend/client.NewClientManager(0x0, 0x0, 0x0, 0x0, 0x1, 0x0)     /home/travis/build/kubernetes/dashboard/.tmp/backend/src/github.com/kubernetes/dashboard/src/app/backend/client/manager.go:398 +0x6c main.main()     /home/travis/build/kubernetes/dashboard/.tmp/backend/src/github.com/kubernetes/dashboard/src/app/backend/dashboard.go:99 +0x104
Looking at the main dashboard, I executed this to create the kubernetes-dashboard-csrf:
echo 'apiVersion: v1 kind: Secret metadata:   labels:     k8s-app: kubernetes-dashboard   name: kubernetes-dashboard-csrf   namespace: kube-system type: Opaque data:   csrf: ""' | kubectl apply -f -
And then everything worked.
You might also want to include the port forwarding command (if people are running headless) and the dashboard url:
ssh -L 8001:localhost:8001 node-1
http://localhost:8001/api/v1/namespaces/kube-system/services/http:kubernetes-dashboard-head:/proxy/#/overview?namespace=default
Good stuff! Now I've got to go build some new arm docker images for my code (already had x86)

Hello @alexellis,
Here is the link to my RPi cluster:
https://twitter.com/ravidsinghbiz/status/1094529653362966528
Thank you,

Ravi

@dnachman please raise a separate issue.

Hi @alexellis
Here is my cluster:
Name: selexin (Australia)
URL: https://selexin.com/2019/04/12/kubernetes-on-raspberry-pi-cluster.html
Useful notes:
4x RPi Cluster, running dnscrypt-proxy/sonarr/couchpotato/nzbget, among other things :)
Had some issues setting up Load Balancing and Persistent Volumes/Storage - which I am covering in my new blog, along with setting up the services mentioned :)

Here it is mine:
https://twitter.com/henry2man/status/1085674266115407878
Nodes: 1x PI 3B & 2x PI 3B+
PSU: Anker 60W 6 port
Switch: TP-Link GIGABIT 5 ports powered by a USB-to-barrel adapter from PSU
Planned upgrade (waiting for shipping🤞): 1x PI 4B 4Gb
OS: Raspbian Stretch
Docker engine
K8s: #K3S


text:
jspm not found

I think it's unreasonable for a package to require the user to manually install something to be able to use your package.
Your package may depend on jspm if you want but I expect all package to be installable simply with a npm install.
For instance, all my packages (see this one for instance) are transpiled to ES5 before publishing.

I'm working to fix this now, thanks

@julien-f sorry, that was my fault, not sure why I added the postinstall script to package.json...

Thanks :)

Hmm, so right now I'm having trouble with Travis not running jspm install since postinstall was removed. Once I figure what I'm not doing right to fix this, I can do another minor version bump.

maybe change prepublish to jspm install && npm run build?

maybe change prepublish to jspm install && npm run build?

Would this not result in the same issue? From what I can tell, prepublish is run as part of install by default

jspm should probably be a dev dependency and run automatically via prepublish.

jspm is already a dev dependency, but it needs to install some dependencies itself

@alexgibson prepublish is run before publishing the package, therefore only the compiled version will be shipped.

From what I can see, prepublish seems to be run as part of npm install too?

Yes, but only in development, not when installed as a dependency.

Ah I see, ok thanks. I will try @perrin4869 suggestion - thanks

Ok, that seemed to work - will bump to v2.0.2

Ok, this should now be fixed in 2.0.1 - thanks for patience and tips 🐝

Thank you :)

authors: alexgibson julien-f perrin4869


text:
Is it possible to turn off dimensions printing?

Hi!  Thanks for a great utility!
Is there any way to turn off the printing of the dimensions?  I just want to see the data.

Sure. Tell me what you would like the flag to be called.

Wow!  Thanks!
Whatever you like -- how about -D, --no-dimensions  ?  :)

Here is the implimentation

Beauty!  Thank you very much!

authors: alexhallam atsalolikhin-spokeo

repo: alexhallam/tv

license: Unlicense


text:
fixes an error when sample code is run

this is the error(node 6.2.0):
TypeError: Class constructor Server cannot be invoked without 'new'
at RPCserver (/home/capaj/git_projects/zahrajeme.cz-backend/node_modules/socket.io-rpc/main.js:22:37)
at Object. (/home/capaj/git_projects/zahrajeme.cz-backend/server.js:8:22)
at Module._compile (module.js:541:32)
at Object.Module._extensions..js (module.js:550:10)
at Module.load (module.js:458:32)
at tryModuleLoad (module.js:417:12)
at Function.Module._load (module.js:409:3)
at Function.Module.runMain (module.js:575:10)
at startup (node.js:160:18)
at node.js:449:3

Thanks, I guess you could do new (require('uws').Server)({options}); also?

I force pushed and forgot about this merge. Could you see if new (require('uws').Server)({options}) works and create a new PR? If you want that is.

@alexhultman yes, new (require('uws').Server) works fine. Of course I want. The more people use uWebSockets, the better!

authors: alexhultman capaj

repo: alexhultman/uWebSockets


text:
Alternative doc parser needed for HDFC bank statement

HDFC bank statements seems to be available in multiple formats. The doc parser shared by Alex does not work with the existing parser. A new parser is required.

This is implemented but the hdfc bank statement parser is super complicated now.. Something needs to be done about it.. maybe its time to split it into 2 filters or maybe figure out a better way to merge fields .. Later might be more feasible
currently there are 3 transactions field. This parser currently handles 3 kinds of documents. Its not hard to tell which of these transactions field is going to handle which document. So now maintenance is a major problem. If a particular document has an issue, which field will you update?


text:
Getting a 404 on every url after following instructions 100%

Hello and thanks a bunch for making this adapter.
I am having trouble making it work. I follwed all instructions as per the wiki. But I am only getting 404s on every url.
Tech stack:

Astro
Svelte
Tailwind
DaisyUI
Google Sheets API

astro.config.mjs

import { defineConfig } from 'astro/config';
import tailwind from "@astrojs/tailwind";
import svelte from "@astrojs/svelte";
import awsAmplify from 'astro-aws-amplify';
// https://astro.build/config
export default defineConfig({
integrations: [tailwind(), svelte()],
output: "server",
adapter: awsAmplify(),
});

amplify.yml (in amplify website ui, not in my git)

version: 1
frontend:
phases:
preBuild:
commands:
- npm ci
build:
commands:
- npm run build
- mv node_modules ./.amplify-hosting/compute/default
artifacts:
baseDirectory: .amplify-hosting
files:
- '/*'
cache:
paths:
- node_modules//*

Downloading the deployment artifacts gives the expected result:

zip file
|-compute
|-static
|-deplot_manifest.json

Builds are going on just fine, no problem I see in the logs. Can locally run npm run dev just fine, can run with a nodejs adapter on my self hosted server.
What could be the cause of this?
Appendix - build logs:
`0
2024-06-20T21:03:49.451Z [INFO]: # Cloning repository: git@github.com:OriGummy/Academease.git
1
2024-06-20T21:03:50.968Z [INFO]:
2
2024-06-20T21:03:50.969Z [INFO]: Cloning into 'Academease'...
3
2024-06-20T21:03:50.969Z [INFO]: # Switching to commit: 1683d091c757e7408e1f17fc274dd8e31f1e6064
4
2024-06-20T21:03:51.017Z [INFO]: Note: switching to '1683d091c757e7408e1f17fc274dd8e31f1e6064'.
5
You are in 'detached HEAD' state. You can look around, make experimental
6
changes and commit them, and you can discard any commits you make in this
7
state without impacting any branches by switching back to a branch.
8
If you want to create a new branch to retain commits you create, you may
9
do so (now or later) by using -c with the switch command. Example:
10
git switch -c
11
Or undo this operation with:
12
git switch -
13
Turn off this advice by setting config variable advice.detachedHead to false
14
HEAD is now at 1683d09 fix
15
2024-06-20T21:03:51.116Z [INFO]: Successfully cleaned up Git credentials
16
2024-06-20T21:03:51.117Z [INFO]: # Checking for Git submodules at: /codebuild/output/src2988892587/src/Academease/.gitmodules
17
2024-06-20T21:03:51.123Z [INFO]: # Retrieving environment cache...
18
2024-06-20T21:03:51.219Z [INFO]: # Retrieved environment cache
19
2024-06-20T21:03:51.219Z [INFO]: ---- Setting Up SSM Secrets ----
20
2024-06-20T21:03:51.219Z [INFO]: SSM params {"Path":"/amplify/d3f2zbboiiam9y/master/","WithDecryption":true}
21
2024-06-20T21:03:52.235Z [INFO]: No live updates for this build run
22
2024-06-20T21:03:52.239Z [INFO]: # Retrieving cache...
23
2024-06-20T21:03:52.306Z [INFO]: # Extracting cache...
24
2024-06-20T21:03:52.308Z [INFO]: # Extraction completed
25
2024-06-20T21:03:52.308Z [INFO]: # Retrieved cache
26
2024-06-20T21:03:57.901Z [INFO]: ## Starting Backend Build
27
Checking for associated backend environment...
28
No backend environment association found, continuing...
29
Completed Backend Build
30
2024-06-20T21:03:57.907Z [INFO]: {"backendDuration": 0}
31
Starting Frontend Build
32
Starting phase: preBuild
33
Tech stack:
Executing command: npm ci
34
2024-06-20T21:04:24.992Z [WARNING]: npm WARN deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
35
2024-06-20T21:04:25.427Z [WARNING]: npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
36
2024-06-20T21:04:25.430Z [WARNING]: npm WARN
37
2024-06-20T21:04:25.430Z [WARNING]: deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
38
2024-06-20T21:04:25.440Z [WARNING]: npm WARN
39
2024-06-20T21:04:25.440Z [WARNING]: deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
40
2024-06-20T21:04:29.604Z [INFO]: added 707 packages, and audited 708 packages in 17s
41
2024-06-20T21:04:29.610Z [INFO]: 219 packages are looking for funding
42
run npm fund for details
43
2 high severity vulnerabilities
44
To address all issues, run:
45
npm audit fix
46
Run npm audit for details.
47
2024-06-20T21:04:29.625Z [INFO]: # Completed phase: preBuild
48
Starting phase: build
49
Executing command: npm run build
50
2024-06-20T21:04:29.963Z [INFO]: > academease@0.0.1 build
51

astro check && astro build

52
2024-06-20T21:04:33.354Z [INFO]: 21:04:33 [vite] Forced re-optimization of dependencies
53
2024-06-20T21:04:33.377Z [INFO]: 21:04:33 Types generated 50ms
54
2024-06-20T21:04:33.383Z [INFO]: 21:04:33 [check] Getting diagnostics for Astro files in /codebuild/output/src2988892587/src/Academease...
55
2024-06-20T21:04:36.475Z [INFO]: astro.config.mjs:3:1 - warning ts(6133): 'node' is declared but its value is never read.
56
3 import node from "@astrojs/node";
57
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
58
2024-06-20T21:04:36.761Z [INFO]: src/components/Nav.astro:44:9 - warning astro(4000): This script will be treated as if it has the is:inline directive because it contains an attribute. Therefore, features that require processing (e.g. using TypeScript or npm packages in the script) are unavailable.
59
See docs for more details: https://docs.astro.build/en/guides/client-side-scripts/#script-processing.
60
Add the is:inline directive explicitly to silence this hint.
61
44

Hello do you have a repo I can look at?

Idk what happened,  but today I am only getting error 500s. Looking at the logs I see it is because the environment variables are missing. for example this passed build but fails runtime:

export const supabase = createClient(
import.meta.env.SUPABASE_URL,
import.meta.env.SUPABASE_ANON_KEY,
);

Is this desired behaviour that they only be used at build time?
If not - I'd be happy to implement this myself and commit. Some initial guidance will be helpful.

Nvm! found this handy script:
version: 1
frontend:
  phases:
    preBuild:
      commands:
        - npm ci
    build:
      commands:
        - env >> .env
        - npm run build
        - mv node_modules ./.amplify-hosting/compute/default
        - mv .env ./.amplify-hosting/compute/default/.env
  artifacts:
    baseDirectory: .amplify-hosting
    files:
      - '**/*'
  cache:
    paths:
      - node_modules/**/*

At https://www.launchfa.st/blog/deploy-astro-aws-amplify, which fixed my problem.
consider uploading to the wiki.
Again thanks for the lib and sorry for troubling you with something I could have fixed myself.

No worries - actually that script is in the readme but not in the docs which I forgot to update sorry - I've updated that now.

authors: OriGummy alexnguyennz

repo: alexnguyennz/astro-aws-amplify


text:
NullReferenceException in OKTaskCallback.OnFailure

I don't have any reproduction steps, however I have a seen a high number of crashes happening in the OKTaskCallback.OnFailure method due to an NRE. My stack trace doesn't give much more detail than that, but I wonder if the changes proposed in https://github.com/alexrainman/ModernHttpClient/pull/65 would fix it, as it does seem possible that the IOException could have a null message?

There's an active PR i will be merging soon that solves this issue.

Merging this in the next release.

authors: alexrainman chris-tradify

repo: alexrainman/ModernHttpClient


text:
multiple near query in 1?

Hi ,
is it possible to add in multiple locations onto near,
or calling it multiple time, and having it return distance_0, distance_1
just a suggestion, sorry im not sure how it will effect other algorithm...
thanks

Currently this is not possible without running multiple .near queries on the group of objects. No plans to add this ability either as it's too far from the core functionality Geocoder seeks to provide.

repo: alexreisner/geocoder


text:
.near method and bounding box

Is there any method like .near, but only ordering objects by distance without any bounding box? Now I can only use User.near(coords, some_big_value, order: :distance), but seems like it's not a good way.

There is no such method but if you want to do this you can use the methods in Geocoder::Sql to build an ORDER BY clause.


text:
Versioned API route_class

Hello! We would like to be able to create an APIRouter using the route_class similar to what fastapi-versioning supports with versioned_api_route: https://github.com/DeanWay/fastapi-versioning/blob/18d480f5bb067088f157f235a673cb4c65ec77d5/fastapi_versioning/routing.py For example:
router = APIRouter(
    prefix="/myroute",
    tags=["MyRoute"],
    route_class=versioned_api_route(1, 1)
)

app.include_router(router)
versionize(app, ...)

Our local testing shows that dropping in versioned_api_route works okay with fastapi-versionizer but wanted to open an issue to see if you would want an PR opened for something like this or if you intend to keep @api_version the primary interaction.

@bostrt Just added this for you here and pushed 0.1.6 to PyPI.
I also added an example file and accompanying tests.
Let me know if you see any problems with this.

@alexschimpf thanks! I just tested it and works great :smiley:

authors: alexschimpf bostrt

repo: alexschimpf/fastapi-versionizer


text:
Can't run script..

Hi! I need to convert > 1000 gp files in bulk, and your script is the only tool that I found in the whole fking internet =) Could you please specify how to run it, I never used Unity and can't understand what I'm doing wrong. I imported the file, nothing happens with Run button, when I try to Build & Run - log is full of errors.

Hi, thank you for trying out my program.
Unfortunately I don't have the time to remotely diagnose your issues there.
You can either try downloading and installing some other (older / newer) Unity versions or Googling that error message "System.Windows.Forms" etc.
My quick google showed that it might have something to do with the set .NET version.
But try out for yourself!
Cheers

authors: alexsteb mkl-strng

repo: alexsteb/GuitarPro-to-Midi


text:
Added loggin helper method

I'm not completely into your project, but I needed a simple log method. Don't know if this is the appropriate place  to put into the code.

Thanks for the pull request. I want tuneup to be a significant layer of abstraction above the UIAutomation API and have tried to avoid putting too many macro-type functions in here. This patch doesn't address the different types of logging that UIAutomation can do and if we went down the path of supporting those, all we're really doing is mapping the same API to different names. That doesn't feel like a major step forward.

authors: alexvollmer brutella


text:
audio: remove audio_srate and audio_channels

remove these config options:
audio_srate            8000-48000
audio_channels         1-2
these options has no practical usage, except to limit the
enabled audio codecs to the range of samplerate/channels
as specified.
if a module has multiple audio codecs, and you only want
to use one of them, this can now be done with the
"audio_codecs" parameter to the "accounts" file.

extra note: these config options were added a very long time ago, and is not really needed.
so I propose to remove them.
if someone is still using them, or disagrees with this PR, please state your opinion here :)
Alfred

Alfred E. Heggestad writes:

remove these config options:
audio_srate            8000-48000
audio_channels         1-2

How about ausrc_srate, auplay_srate, ausrc_channels, auplay_channels?
Are they too deprecated?
-- Juha

no, these config options are not deprecated. they are used to force the soundcard
to a specific sample rate/channels.
by default, the soundcard will be started with the same samplerate/channels
as the audio codec used, to get the best possible audio quality without latency.
if one of these options are specified, and it differs from the selected audio codec,
the audio resampler will be used.

Alfred E. Heggestad writes:

by default, the soundcard will be started with the same samplerate/channels
as the audio codec used, to get the best possible audio quality
without latency.
if one of these options are specified, and it differs from the
selected audio codec, the audio resampler will be used.

Thanks for the explanation, Juha

authors: alfredh juha-h

repo: alfredh/baresip