text:
Allow PHP 8.4

I don’t get it why this library forcefully disallows installation on higher / unsupported PHP versions.
It’s one of the few dependencies that I know that do this.
Can we please relax this so that people can start running their CI on PHP 8.4 already to spot issues and report / fix them here.

Handled in https://github.com/moneyphp/money/pull/796

repo: moneyphp/money


text:
Unsupported BSON version, bson types must be from bson 5.x.x

With the latest connect-mongodb-session version v4.0.0 I started to get error Unsupported BSON version, bson types must be from bson 5.x.x (node_modules/connect-mongodb-session/index.js:224:19). Other mongodb-related dependency is mongoose, which is up to date as well. What could be the issue?

Run npm list bson and paste the output here please

Not the original poster, but ran into the same issue, here's my output:
├─┬ connect-mongodb-session@4.0.0
│ └─┬ mongodb@5.9.2
│   └── bson@5.5.1
├─┬ mongodb@6.3.0
│ └── bson@6.2.0
└─┬ mongoose@8.1.0
  └── bson@6.2.0 deduped

I just bumped to 4.0.0 and started getting the same here.
Error:
Error: Error setting PeTlDY8GA6n_CujSCJLJeNxENCs9--Lt to Session {
  cookie: { path: '/', _expires: null, originalMaxAge: null, httpOnly: true },
  foo: ...,
  bar: ...
}: Unsupported BSON version, bson types must be from bson 5.x.x
    at /.../node_modules/connect-mongodb-session/index.js:224:19
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

As per the instructions above:
npm list bson

├─┬ connect-mongodb-session@4.0.0
│ └─┬ mongodb@5.9.2
│   └── bson@5.5.1
└─┬ mongoose@8.1.1
  ├── bson@6.2.0
  └─┬ mongodb@6.3.0
    └── bson@6.2.0 deduped

Ok, we'll need to create a new release using MongoDB 6.x so we can get the same bson version. Will fix.

Wow, that was fast, thanks!

I'm getting this same error @5.0.0 using Mongo Atlas

Today, I am getting a similar error after updating my modules: BSONVersionError: Unsupported BSON version, bson types must be from bson 6.x.x.
npm list bson:
├─┬ connect-mongodb-session@5.0.0
│ └─┬ mongodb@6.3.0
│   └── bson@6.4.0 deduped
└─┬ mongoose@8.2.1 invalid: "^5.7.9 || 6.x" from node_modules/@mongoosejs/double
└── bson@6.4.0

Getting the same error here

Facing same issue

Same issue

Same for me has anyone solved this ?

same issue as
Error updating metadata: BSONVersionError: Unsupported BSON version, bson types must be from bson 6.x.x
also i am updating the metadata field and start getting this error
npm ls bson is this
├─┬ mongodb@6.9.0
│ └── bson@6.8.0
├─┬ mongoose@8.7.0
│ └── bson@6.8.0 deduped
└─┬ multer-gridfs-storage@5.0.2
└─┬ @types/mongodb@3.6.20
└─┬ @types/bson@4.2.0
└── bson@6.8.0 deduped

I have the same issue. I wanted to upgrade my mongodb cluster from v6 to v7. I am still on v6 right now as my mongoose update broke the app.
I first upgraded my mongoose from v6.7.3 to v8.x. It broke the whole app, first with experiment topLevelAwait webpack config problems. After I got my mongoose back to v.6.7.3 and changed the webpack config I got the bson problem (BSONVersionError: Unsupported BSON version, bson types must be from bson 6.x.x)
My npm list bson results:
├─┬ mongodb@6.9.0
│ └── bson@6.8.0
└─┬ mongoose@6.13.3
├── bson@4.7.2
└─┬ mongodb@4.17.2
└── bson@4.7.2 deduped
Is there a good article or guidance for this issue?
I just did, but I have not released my mongodb cluster upgrade from v5 to v6 that was already working in the staging cluster. MongoDB told me that it would be better to upgrade to v7, but the mongoose upgrade broke all. Now my clock is ticking as mongodb will push my production cluster to v6 at the end of October. I would be fine staying on v6 for now, but I need a solution for this bson issue. Why is it that with downgrading mongoose back this issue remained?
Thanks in advance for anyone who can help!

source: gharchive/issue

repo: mongodb-js/connect-mongodb-session

license_type: permissive

license_source: bigquery


text:
Add model schema version feature

Added a feature for managing mongoDB document versioning.
The default key is "schema_version"
If the version is not specified, t is automatically set to 1
Usage
use MongoDB\Laravel\Eloquent\HasDocumentVersion;
use MongoDB\Laravel\Eloquent\Model as Eloquent;

/** @property int $schema_version */
class SchemaVersionned extends Eloquent
{
    use HasSchemaVersion;

    public const int SCHEMA_VERSION = 1;

    protected $connection       = 'mongodb';
    protected $collection       = 'documentVersion';
    protected static $unguarded = true;
}

For overwrite version key:
/** @property int $__v */
class DocumentVersion extends Eloquent
{
    use HasSchemaVersion;

    protected $connection       = 'mongodb';
    protected $collection       = 'documentVersion';
    protected static $unguarded = true;

    public static function getSchemaVersionKey(): string
    {
       return '__v';
    }
}

For update document version:
/** @property int $schema_version */
class DocumentVersion extends Eloquent
{
    use HasSchemaVersion;

    public const int SCHEMA_VERSION = 2;

    protected $connection       = 'mongodb';
    protected $collection       = 'documentVersion';
    protected static $unguarded = true;
}

[x] Add tests and ensure they pass
[x] Add an entry to the CHANGELOG.md file
[x] Update documentation for new features

Thank you @florianJacques

source: gharchive/pull-request

authors: GromNaN florianJacques

repo: mongodb/laravel-mongodb

license: MIT

license_source: github-api


text:
PHPLIB-1485: Drop support for MongoDB 3.6

PHPLIB-1485
With the extension dropping support for MongoDB 3.6 by bumping its minWireVersion (see https://github.com/mongodb/mongo-php-driver/pull/1610), this PR removes MongoDB 3.6 from the test matrix and removes wire version checks related to MongoDB 3.6 as we know we'll never be connected to a 3.6 server.

What is the behavior of the driver if someone tries to use it with MongoDB 3.4?

Note that 3.4 has been dropped a while ago, this PR drops support for 3.6. libmongoc will throw an error about the wire version not being supported:

Server at  reports wire version , but this version of libmongoc requires at least 7 (MongoDB 4.0)

repo: mongodb/mongo-php-library


text:
Field name aliases

In some cases, when we have huge collection of relatively small objects, there will be a huge storage overhead, caused by human-friendly naming.
It will be great, to have aliases or `, for example:
class Measure
    field :measured_at, type: DateTime, name: "d"
    field :instrument_id, type: Integer, name: "i"
    field :value, type: Integer, name: "v"
    field :quality, type: Integer, name: "q"
end

After explicitly setting name in field, mongoid will automatically change original field names in criteria, to real one.

You can already add the as: "new_name" option to field right now... You you just want the functionality extended into criteria as well?

@y8 Yeah, the as option simply creates aliases for the field's accessors.

authors: durran nickhoffman y8

repo: mongoid/mongoid

license: mit


text:
How can I count the data?

Is there some method to get the amount of some query condition?

No yet, no need..

authors: XhinLiang nswbmw

repo: mongolass/mongolass


text:
Fix wrong type for string formula

https://github.com/monitorjbl/excel-streaming-reader/pull/154 - partially reworked to build with poi 4.0.0

👍 Looks good to me!

authors: monitorjbl pjfanning

repo: monitorjbl/excel-streaming-reader


text:
Update auth, dynamodb, s3 to 2.15.79

Updates

software.amazon.awssdk:auth
software.amazon.awssdk:dynamodb
software.amazon.awssdk:s3

from 2.15.67 to 2.15.79.
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!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "software.amazon.awssdk" } ]

labels: library-update, semver-patch

Superseded by #564.

repo: monix/monix-connect


text:
Shifting back to the default pool in Task.fromFuture, Task.async and others

Currently code like this:
Task.async[Unit] { cb =>
  foreignEC.submit(new Runnable {
    override def run(): Unit = {
      cb(Right(()))
    }
  })
}

Stays on foreignEC for the next operations until async boundary. Similar to Future and probably the rest similar operators.
I'm not familiar with any situation when it's desirable but it can easily catch off-guard and is a source of confusion, see recent blog post and it was already changed for fromFuture in Cats-Effect: https://github.com/typelevel/cats-effect/pull/546
I believe the rest is planned to be fixed in 3.0. Do you think we should do it and can we allow it such a change right now? cc @oleg-py @alexandru
I feel like it wouldn't be noticable to the users unless there are use cases from current behavior that I'm not aware of.
If we agree to do it, I can provide a PR

It might make sense for Task.async to shift back to the default Scheduler.

Compared with cats.effects.IO we can do this without changing the API. And it might make Task.async safer.
My worry is that we might need some extra builders that don't shift. We already have Task.async, Task.async0, Task.cancelable, Task.cancelable0 and Task.create 🙂

authors: Avasil alexandru

repo: monix/monix


text:
Error:Connection reset by peer

运行test里面的NormalHttpProxyServer会直接提示连接被重置，采用的方法是本地执行，然后Chrome使用SwitchyOmega来代理转发
十一月 12, 2018 8:47:31 上午 io.netty.channel.AbstractChannelHandlerContext invokeExceptionCaught
警告: An exception 'java.lang.Exception: java.io.IOException: Connection reset by peer' [enable DEBUG level for full stacktrace] was thrown by a user handler's exceptionCaught() method while handling the following exception:
java.io.IOException: Connection reset by peer
	at sun.nio.ch.FileDispatcherImpl.read0(Native Method)
	at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39)
	at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223)
	at sun.nio.ch.IOUtil.read(IOUtil.java:192)
	at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:379)
	at io.netty.buffer.PooledUnsafeDirectByteBuf.setBytes(PooledUnsafeDirectByteBuf.java:288)
	at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1108)
	at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:345)
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:148)
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.lang.Thread.run(Thread.java:745)

我这测试没问题呀，代理之后访问网页有问题吗？

恩恩，就是访问页面返回的错误

把你访问的地址发出来我试试看看

就很随意的，Chorme访问www.baidu.com

还说我SwitchyOmega设置的有问题呢？
我switchOmega设置的http和https走代理服务器

把你SwitchyOmega设置截图出来看看

就在默认那里填ip和端口就好，协议选http

这样确实能访问网页啦，不过还是会存Connection reset by peer的情况，我再研究一下，非常感谢：P

ok 那我把issue关了哦

authors: Metatronxl monkeyWie

repo: monkeyWie/proxyee


text:
[QUESTION] Apparent poor performance in SKGLControl when overlaying bitmaps

Hello,
I'm new to SkiaSharp, am trying to use it with its OpenGL backend to pan, zoom and overlay large bitmaps, and I'm seeing poor performance I don't understand.   When I draw a single bitmap, drawing is very quick.  But when I overlay a second bitmap, performance drops precipitously.  I don't doubt that I'm using SkiaSharp incorrectly, but I don't see where.
I'm on windows 10 build 19043.1348, using the SkiaSharp, SkiaSharp.Views.Desktop.Common and SkiaSharp.Views.WindowsForms nuget packages, all v2.80.3.
Here is code that demonstrates the behavior.  This code creates an SKGLControl and a form containing it.  (My understanding is that the SKGLControl handles OpenGL, and I don't need to do anything further to get GPU acceleration.  Is this right?)
The code then loads three bitmaps, two from the same file.  It then proceeds to draw the bitmaps on the SKGLControl repeatedly, measuring the time between each iteration.  There's a configuration variable (run_case) that says what to draw, and the timings for each case are shown below.
[STAThread]
static void Main()
{
    var form = new Form { Size = new System.Drawing.Size(1400, 800) };
    var control = new SKGLControl { Dock = DockStyle.Fill }; form.Controls.Add(control);

    // All images Width=4992 Height=4096 AlpaType=Opaque ColorType=Bgra8888 isTextureBacked=false
    var image1 = SKImage.FromEncodedData(@"bitmap1.png");
    var image2 = SKImage.FromEncodedData(@"bitmap2.png");
    var image3 = SKImage.FromEncodedData(@"bitmap1.png");  // note, this is the same bitmap loaded as image1

    var draw_count = 0;
    var timer = System.Diagnostics.Stopwatch.StartNew();

    var run_case = 6;

    control.PaintSurface += (object sender, SKPaintGLSurfaceEventArgs e) =>
    {
        var opacity = 1f;
        var src_rect = new SKRect(0, 0, image1.Width, image1.Height);
        var dest_rect1 = SKRect.Create(0, 0, control.Width, control.Height);
        var dest_rect2 = SKRect.Create(0, 0, 0.8f * control.Width, 0.8f * control.Height);
        var paint = new SKPaint { FilterQuality = SKFilterQuality.None, Color = SKColors.White.WithAlpha((byte)(255f * opacity)) };
        var canvas = e.Surface.Canvas;

        switch(run_case)
        {
            case 1:
                canvas.DrawImage(image1, src_rect, dest_rect1, paint);
                break;
            case 2:
                canvas.DrawImage(image2, src_rect, dest_rect2, paint);
                break;
            case 3:
                canvas.DrawImage(image1, src_rect, dest_rect1, paint);
                canvas.DrawImage(image1, src_rect, dest_rect2, paint);
                break;
            case 4:
                canvas.DrawImage(image2, src_rect, dest_rect1, paint);
                canvas.DrawImage(image2, src_rect, dest_rect2, paint);
                break;
            case 5:
                canvas.DrawImage(image1, src_rect, dest_rect1, paint);
                canvas.DrawImage(image2, src_rect, dest_rect2, paint);
                break;
            case 6:
                canvas.DrawImage(image1, src_rect, dest_rect1, paint);
                canvas.DrawImage(image3, src_rect, dest_rect2, paint);
                break;
        }

        draw_count++;
        var msec_per_draw = timer.ElapsedMilliseconds / (double)draw_count;

        canvas.DrawText($"msec/draw = {msec_per_draw:F0}", new SKPoint(100, 100), new SKPaint { TextSize = 32, Color = SKColors.Blue });
        control.Invalidate();
    };

    Application.Run(form);
}

Here are the times printed by the DrawText call.  Because the Stopwatch is created on the main thread, then the form and SKGLControl are created and initialized before the draw loop starts on the graphics thread, I've let the program run a while to let this time settle down.
case 1: 18 msec <- draws bitmap1 once
case 2: 18 msec <- draws bitmap2 once
case 3: 18 msec <- draws bitmap1 twice
case 4: 18 msec <- draws bitmap2 twice
case 5: 510 msec <- draws bitmap1 then bitmap2
case 6: 403 msec <- draws bitmap1 then bitmap1 again as different image instance
Also, when running these cases in visual studio community 2019 with the debugger, it looks like one core is saturated in cases 5 and 6.
If I load the png files as SKBitmaps rather than SKImages, the case 5 & 6 times are somewhat less but still much greater than the other cases.  If I remove the assignment to the Color property of the SKPaint and let that default, the times don't change.
What is going on with these times, and what mental model should I have about what Skia is doing that explains them?  Do I need to initialize the SKGLControl differently?  I had thought that Skia would transfer the images as bitmaps to the GPU and render them onto the openGL context there, with very little work done by the CPU.  That doesn't seem to be the case when overlaying the second image.
My goal is to render multiple bitmaps overlayed with transparency and to pan and zoom them smoothly.  My machine's GPU should be capable of doing that, and I think Skia should be able to use the GPU do it.  These bitmaps are fairly large (4992x4096), and GDI+ is too slow.
Thank you,
Mark Shirley
p.s., If I switch from using SKImage to using SKBitmap explicitly and then create the bitmaps via new SKBitmap(4992, 4096, true) rather than reading them from files, the behavior is similar.  The speed of case 3 (draw image1 twice) is still 18 msec and the speed of drawing two different bitmaps (created the same way) is 241 msec. This is faster than the example with images with varying data in them but still much slower than drawing a single image either once or twice.
I've also calling SetImmutable() on each of the SKBitmap's, with no change to the behavior.

p.s., If I create the bitmaps via new SKBitmap(4992, 4096, true) rather than reading them from files, the speed of case 3 (draw image1 twice) is still 18 msec but the speed of drawing two different bitmaps (created the same way) is 241 msec, an order of magnitude slower.

This was due to a cache holding raster data on the GPU.  From an SKGLContext, this cache size can be set like this.  control is an instance of SKGLContect.
control.GRContext.SetResourceCacheLimit(number_of_bytes)
The default size of this cache in the version I'm using is 100,663,296 bytes, which turned out to be too small for my application.  control.GRContext will return null before the context has been initialized.  I'm not where it's best place is to set this cache size ... I'm doing it once, the first time the paint method has been called.  I also don't know whether it's reset of the graphics context is regenerated for some reason.

repo: mono/SkiaSharp


text:
add python decouple

All Submissions:

[x] Have you followed the guidelines in our Contributing document?

New Feature Submissions:

[x] Does your submission pass build tests locally?
[x] Have you indented your code locally prior to submission?

Changes to Core Features:

[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you successfully ran tests with your changes locally?

Hope that you have followed the contribution guidelines. Please don't make a request anywhere to get a review. One of the maintainers will get back to it within a day or so. 😃
(Powered by GitMate.io)

Make neccessary changes in .travis.yml

O yes. I forgot.

@akashgiricse : Squash your commits and open a PR after updating your branch.

@akashgiricse : Squash your commits and open a PR after updating your branch.(will resolve the conflicts)

done

Resolved conflicts.

Hey @monsij , sorry I did not ask for what should be the value of DEBUG, True or False. It's true in my  PR as it can be seen in .env.example

Yeah cool.Not an issue

Hey @akashgiricse perfect 💯

I think I made a mistake. I git pulled and then I did following to squash the two commit
git reset --soft HEAD~2
git commit -m "New message for the combined commit"
git push origin +python-decouple

while my python-decouple branch wash checked. Hence it has produced conflicts again.
I'm not very comfortable with Git I guess. I need to learn more.
But before that what should I do now?

Resolve the conflicts , make another commit then squash them all together

Hey @monsij , I don't know what's wrong but if I want to squash the two commits i.e Merge branch 'master' into python-decouple and Add python-decouple and .gitignore into one commit Add python-decouple and .gitignore by running the command git rebase -i HEAD~2, I don't see the commit Merge branch 'master' into python-decouple there in the editor as pick. There's only one commit Add python-decouple and .gitignore. BTW, I resolved the conflict on GitHub and not locally and after resolving I did git pull. Hence I don't think I can squash these 2 commits into 1 as they are not in git rebase -i HEAD~2. So if the PR is ok, you can merge it and in future, I'll take care to squash all commits.

authors: akashgiricse monsij

repo: monsij/StudentPortal


text:
Put back sell limits

Is it possible to request you put back sell limits. People are forming big walls just to drop the price intentionally. I understand that strategy but how is this good for the platform overall or if you can explain to me how this won't be a issue later on would be great.
Just alot of manipulation but I don't know if you find that to be a issue or not.
I myself am buying the dips but overall again isn't having a minimum sell limit better than a consistent pump and dump?

NO...Once all these weak hands get out of the way the price will go up. Get yourself all the coins you can while this is happening. Sell limits will kill a platform!

@2themoonandback yeah, we can't really force sell limits right now. The team still creates a new whitepaper and plan, and for now there are not much going on, so the price is and will be low for some time, but they decided to stop controlling the market.

repo: monyxcoin/monyx-coin


text:
plugin::call_func_failed when loading a TOML plugin

What version?
0.26.2
Which command?
proto install protoc
What happened?
I've written a TOML plugin for protoc, source available here.
When trying to run proto install protoc, I receive the following error:
Error: plugin::call_func::failed

  × unexpected character 'r' after patch version numberLoaded 258 tags{"args":["ls-
  │ remote","--tags","--sort","version:refname","https://github.com/protocolbuffers/
  │ protobuf"],"command":"git","env_vars":{},"set_executable":false,"stream":false}Loading Git tags from
  │ remote https://github.com/protocolbuffrs/-c

I believe the root cause is the repository tags not having a normalized format. Running git ls-remote --tags --sort refname https://github.com/protocolbuffers/protobuf manually kind of confirms my suspicions. Some of the listed tags:

v18.3
v2.4.1
v21.0-rc1
v2.6.1rc1
conformance-build-tag
v3.0.0-beta-3-pre-1
v3.1.0-alpha-1

I've tried changing git-tag-pattern to be as inclusive as possible, but that doesn't seem to help.
Trace logs?
[DEBUG 2023-12-27 17:28:49.756] proto  Running proto v0.26.2  bin="proto" args=["install", "protoc", "--log", "trace"] pid=38610
[TRACE 17:28:49.758] starbase::app  Running startup phase with 3 systems
[DEBUG 17:28:49.758] proto_core::proto:detect_proto_env  Creating proto environment, detecting store  store="/Users/<username>/.proto"
[TRACE 17:28:49.759] starbase::app  Running analyze phase with 3 systems
[TRACE 17:28:49.760] proto_core::proto_config:load_proto_configs  Traversing upwards and loading .prototools files
[DEBUG 17:28:49.760] proto_core::proto_config:load_proto_configs  Loading .prototools  file="/Users/<username>/<project>/.prototools"
[TRACE 17:28:49.760] starbase_utils::fs:load_proto_configs  Reading file  file="/Users/<username>/<project>/.prototools"
[TRACE 17:28:49.760] schematic::config::loader:load_proto_configs  Loading partial configuration  config="ProtoConfig"
[TRACE 17:28:49.760] schematic::config::loader:load_proto_configs  Creating layer from source  config="ProtoConfig" source="<code>"
[TRACE 17:28:49.761] schematic::config::loader:load_proto_configs  Merging partial layers into a final result  config="ProtoConfig"
[DEBUG 17:28:49.761] proto_core::proto_config:load_proto_configs  Loading .prototools  file="/Users/<username>/.proto/.prototools"
[TRACE 17:28:49.761] starbase_utils::fs:load_proto_configs  Opening file  file="/Users/<username>/.proto/.prototools"
[TRACE 17:28:49.761] starbase_utils::fs_lock:load_proto_configs  Locking file  file="/Users/<username>/.proto/.prototools"
[TRACE 17:28:49.762] starbase_utils::fs_lock:load_proto_configs  Unlocking file  file="/Users/<username>/.proto/.prototools"
[TRACE 17:28:49.762] schematic::config::loader:load_proto_configs  Loading partial configuration  config="ProtoConfig"
[TRACE 17:28:49.762] schematic::config::loader:load_proto_configs  Creating layer from source  config="ProtoConfig" source="<code>"
[TRACE 17:28:49.762] schematic::config::loader:load_proto_configs  Merging partial layers into a final result  config="ProtoConfig"
[DEBUG 17:28:49.762] proto_core::proto_config:load_proto_configs  Merging loaded configs
[DEBUG 17:28:49.762] proto_core::proto_config:load_proto_configs  Merged 2 configs
[TRACE 17:28:49.762] starbase::app  Running execute phase with 2 systems
[DEBUG 17:28:49.763] proto_core::tool_loader:install  Finding a configured plugin  tool="protoc"
[DEBUG 17:28:49.763] proto_core::tool_loader:install  Found a plugin  file="/Users/<username>/<project>/.prototools" plugin="source:https://raw.githubusercontent.com/ioxua/proto-toml-plugins/main/plugins/protoc.toml"
[TRACE 17:28:49.763] warpgate::loader:install  Creating plugin loader  cache_dir="/Users/<username>/.proto/plugins"
[TRACE 17:28:49.763] warpgate::loader:install  Loading plugin protoc  plugin="protoc"
[TRACE 17:28:49.765] starbase_utils::fs:install  Reading file metadata  file="/Users/<username>/.proto/plugins/protoc-71e788b05f5aedf65c938a5076166c0f8a1b438546d44e381a18685c610d00b1.toml"
[TRACE 17:28:49.765] warpgate::loader:install  Plugin already downloaded and cached  plugin="protoc" path="/Users/<username>/.proto/plugins/protoc-71e788b05f5aedf65c938a5076166c0f8a1b438546d44e381a18685c610d00b1.toml"
[DEBUG 17:28:49.765] proto_core::tool_loader:install  Loading TOML plugin  source="/Users/<username>/.proto/plugins/protoc-71e788b05f5aedf65c938a5076166c0f8a1b438546d44e381a18685c610d00b1.toml"
[DEBUG 17:28:49.766] proto_core::tool_loader:install  Finding a configured plugin  tool="internal-schema"
[DEBUG 17:28:49.766] proto_core::tool_loader:install  Using a built-in plugin  plugin="source:https://github.com/moonrepo/schema-plugin/releases/download/v0.7.0/schema_plugin.wasm"
[TRACE 17:28:49.766] warpgate::loader:install  Loading plugin internal-schema  plugin="internal-schema"
[TRACE 17:28:49.766] starbase_utils::fs:install  Reading file metadata  file="/Users/<username>/.proto/plugins/internal-schema-811d3262ea8d769bfb546de90f4d846f3c623e2100c602eaa1c70dd49a12f3f5.wasm"
[TRACE 17:28:49.766] warpgate::loader:install  Plugin already downloaded and cached  plugin="internal-schema" path="/Users/<username>/.proto/plugins/internal-schema-811d3262ea8d769bfb546de90f4d846f3c623e2100c602eaa1c70dd49a12f3f5.wasm"
[TRACE 17:28:49.767] starbase_utils::fs:install  Reading file  file="/Users/<username>/.proto/plugins/protoc-71e788b05f5aedf65c938a5076166c0f8a1b438546d44e381a18685c610d00b1.toml"
[TRACE 17:28:49.767] starbase_utils::toml:install  Parsing TOML  file="/Users/<username>/.proto/plugins/protoc-71e788b05f5aedf65c938a5076166c0f8a1b438546d44e381a18685c610d00b1.toml"
[TRACE 17:28:49.767] proto_core::tool_loader:install  Storing schema settings  schema={"install":{"arch":{"aarch64":"aarch_64","x86":"x86_32"},"download-url":"https://github.com/protocolbuffers/protobuf/releases/download/v{version}/{download_file}"},"name":"protoc","platform":{"linux":{"bin-path":"bin/protoc","download-file":"protoc-{version}-linux-{arch}.zip"},"macos":{"bin-path":"bin/protoc","download-file":"protoc-{version}-osx-{arch}.zip"},"windows":{"bin-path":"bin/protoc.exe","download-file":"protoc-{version}-win64.zip"}},"resolve":{"git-tag-pattern":"^v(.+)","git-url":"https://github.com/protocolbuffers/protobuf"},"type":"cli"}
[TRACE 17:28:49.767] proto_core::tool_loader:install  Storing tool identifier  id="protoc"
[TRACE 17:28:49.767] proto_core::tool_loader:install  Storing proto environment  env={"arch":"arm64","os":"macos","home_dir":{"path":"/userhome/","virtual_prefix":"/userhome","real_prefix":"/Users/<username>"},"proto_dir":{"path":"/proto/","virtual_prefix":"/proto","real_prefix":"/Users/<username>/.proto"}}
[DEBUG 17:28:49.768] proto_core::tool:install  Creating tool protoc and instantiating plugin
[DEBUG 17:28:49.768] proto_core::tool_manifest:install  Loading manifest.json  file="/Users/<username>/.proto/tools/protoc/manifest.json"
[DEBUG 17:28:49.799] proto_core::tool:install  Created tool protoc and its WASM runtime
[TRACE 17:28:49.799] warpgate::plugin:install  Calling plugin function register_tool  plugin="protoc" input={"id":"protoc"}
[TRACE 17:28:49.801] warpgate::plugin:install  Called plugin function register_tool  plugin="protoc" output={"inventory":{},"name":"protoc","plugin_version":"0.7.0","type":"CLI"}
[DEBUG 17:28:49.801] proto_core::tool:install  Resolving a semantic version or alias  tool="protoc" initial_version="latest"
[DEBUG 17:28:49.801] proto_core::tool:install  Loading available versions  tool="protoc"
[TRACE 17:28:49.801] proto_core::helpers:install:is_offline  Checking for an internet connection  timeout=750
[TRACE 17:28:49.801] proto_core::helpers  Resolving 1.1.1.1:53
[TRACE 17:28:49.827] proto_core::helpers:install:is_offline  Online!
[TRACE 17:28:49.828] warpgate::plugin:install  Calling plugin function load_versions  plugin="protoc" input={"initial":"latest"}
[TRACE 17:28:49.829] proto_wasm::exec_command:install  Executing command from plugin  command="git" args=["ls-remote", "--tags", "--sort", "version:refname", "https://github.com/protocolbuffers/protobuf"] env_vars={}
[TRACE 17:28:50.348] proto_wasm::exec_command:install  Executed command from plugin  command="git" exit_code=0 stderr_len=0 stdout_len=24532
[TRACE 17:28:50.351] starbase::app  Running shutdown phase with 1 systems
Error: plugin::call_func::failed

  × unexpected character 'r' after patch version numberLoaded 258 tags{"args":["ls-
  │ remote","--tags","--sort","version:refname","https://github.com/protocolbuffers/
  │ protobuf"],"command":"git","env_vars":{},"set_executable":false,"stream":false}Loading Git tags from
  │ remote https://github.com/protocolbuffrs/-c

Operating system?
MacOS
Architecture?
arm64

@ioxua Yeah the TOML plugin expects a fully qualified semantic version, so x.y.z or x.y.z-rc.x.
Let me look into a solution. Maybe we add another setting that is the replacement string, so like $1.$2.$3 or something.

This should solve it: https://github.com/moonrepo/schema-plugin/pull/14

Supported ^ in 0.27.

authors: ioxua milesj

repo: moonrepo/proto


text:
Can't detect if in the model function beforesave the object is soft deleted

I tried to detect in afterSave if the model was soft deleted but i can't because it always return true even I deleted it
public function afterSave($insert, $changedAttributes) { 		var_dump($this->_rt_softdelete); 		parent::afterSave($insert, $changedAttributes); 	}

I found that _rt_softdelete was 'always' set to true and _rt_softrestore 'always' set to false.  To detect the change I'd check by using $this->deleted_by


text:
fix flakey test

This PR refactors a test 'TestGetCustomersWithVerifiedStatus' that was failing intermittently. I changed this test to more deterministically create customers and reliably change the status on one customer.
To ensure the test no longer fails intermittently, I ran go test ./cmd/server/ -count 100 -run TestGetCustomersWithVerifiedStatus -v  and the test no longer fails.

Codecov Report

Merging #164 into master will increase coverage by 2.07%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #164      +/-   ##
==========================================
+ Coverage   61.61%   63.68%   +2.07%
==========================================
  Files          43       42       -1
  Lines        2493     2506      +13
==========================================
+ Hits         1536     1596      +60
+ Misses        699      644      -55
- Partials      258      266       +8

repo: moov-io/customers


text:
Build from source readme updates

Just adding dependencies for building from source to the readme.

Codecov Report

Merging #124 into master will decrease coverage by 3.44%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #124      +/-   ##
==========================================
- Coverage   56.07%   52.62%   -3.45%
==========================================
  Files          24       24
  Lines        3392     3392
==========================================
- Hits         1902     1785     -117
- Misses       1104     1238     +134
+ Partials      386      369      -17

Impacted Files
Coverage Δ

accounts.go
11.66% <0%> (-68.34%)
:arrow_down:

internal/database/mysql.go
31.16% <0%> (-44.16%)
:arrow_down:

ofac.go
38.13% <0%> (-35.6%)
:arrow_down:

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 29dc9c5...4f2454e. Read the comment docs.

authors: codecov-io wadearnold

repo: moov-io/paygate


text:
incorrect if logic in Speller.replaceRunOnWords()?

This looks wrong, it uses getOutputConversionPairs() if it's empty, shouldn't it be the other way round?
https://github.com/morfologik/morfologik-stemming/blob/dc8dde7da215b51166931f3eb4d49a74397f8a01/morfologik-speller/src/main/java/morfologik/speller/Speller.java#L340-L345
I'm not sure if applyReplacements() makes sense at all. We've just checked that both parts are in the dictionary, should replacements still be applied? The if isn't tested, remove it and testRunonWords() still works.
Ping @milekpl, seems this was originally your code.

@jaumeortola Maybe you can comment on this?

I think you are right. The 'if' can be removed and just do candidates.add( ). But I haven't done any test.
Is this used anywhere? Does it cause any error?

I found this when trying to develop a fix for https://github.com/languagetool-org/languagetool/issues/731#issuecomment-328265948 and I just thought it's probably better to clean it up first.

authors: danielnaber jaumeortola

repo: morfologik/morfologik-stemming


text:
ng2-idle pauses when the tab is in the background

NOTE: Due to limited time constraints and resources, we ask that you please use Stack Overflow or similar to troubleshoot or ask general questions, and not use bug reports to solicit help setting up your app.
Describe the bug
When the application tab is in the background, onTimeout, onIdleStart, onTimeoutWarning will not be triggered.
For example, The logic of the code is to jump to a page after timeout, so if I set the onTimeout parameter to 15s, then it will time out 15 seconds after entering Idle and jump to the page, so when I switch back to this tab page, I should see the page after the jump instead of the previous tab.
To Reproduce
Use the DEFAULT_INTERRUPTSOURCES. Set the idle time to 15s, and the timeout to15s.
Start up app Immediately upon restarting the apps, minimize the browser window.
You should see the new page after 30s.
Expected behavior
I hope that when the browser is in the background, it can automatically jump when Idle timeout.
Please tell us about your environment

Mobile or Desktop: Desktop
Browser: Edge
Version: Version 110.0.1587.41 (Official build) (64-bit)
Angular version: 8.2.x
NodeJS version: v14.17.5
Language (TypeScript x.x, ES5, ES2015, etc.): TypeScript version 3.5.3, ES5

I am also facing the same issue but only for iOS. For Android it is working as expected but for iOS it is not working. Does anyone have any solution for the same?

The only way I think that we can handle that is we store the "latest tick" on a sessionStorage and once the tab is recovered validate from there and keep counting, if the time happens, runs the "timeout function".
Otherwise, we don't have too many ways to do that.

See if #131 fixes the issue for you

authors: JiaLinYou asfo girish-fuluskar moribvndvs


text:
Split dev dependencies into tests and docs

I think it may make sense to split off all tests dependencies into its own category now that we have a couple of them
Originally posted by @Averylamp in https://github.com/mosaicml/composer/pull/101#discussion_r761314099

Going to close this for now since I don't think we have a use case for installing dev dependencies separately from test dependencies?

repo: mosaicml/composer


text:
Resuming Training from Load Path

Hi @mvpatel2000 ,
This is a question on the shuffling of the dataset.
So I was training on a cloud gpu setup and after 40% training I got an OOM error. So to start the training from the current checkpoint, I used the load_path parameter. Now, I am concerned what samples are being put in the next set of training because shuffle was turned on, so is it possible that same samples will be put in and some other samples which have not been used might be completely missed out?
Due to lack of credits, the machine has shutdown so I would have to restart on a new machine.
I haven't changed the shuffle seed.
Thanks

@amishparekh Composer should automatically spin the dataloader to the current timestamp, so as long as your shuffle is deterministic (assuming you set seed correctly), you should restart at the correct point


text:
add plugin example for python

Issues associated with this PR
Your PR should present related issues you want to solve.
Solutions
You should show your solutions about the issues in your PR, including the overall solutions, details and the changes. At this time, Chinese is allowed to describe these.
UT result
Unit Test is needed if the code is changed, your unit test should cover boundary cases, corner cases, and some exceptional cases. And you need to show the UT result.
Benchmark
If your code involves the processing of every request, you should give the Benchmark Result.
Code Style

Make sure Goimports has run
Show Golint result

Codecov Report

Merging #1004 into master will decrease coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1004      +/-   ##
==========================================
- Coverage   55.19%   55.16%   -0.03%
==========================================
  Files         243      243
  Lines       23576    23576
==========================================
- Hits        13012    13006       -6
- Misses       9372     9376       +4
- Partials     1192     1194       +2

Impacted Files
Coverage Δ

pkg/module/http2/server.go
81.63% <0%> (-0.3%)
:arrow_down:

pkg/module/http2/transport.go
78.76% <0%> (-0.15%)
:arrow_down:

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 b2a239f...3406b94. Read the comment docs.

authors: codecov-io taoyuanyuan

repo: mosn/mosn


text:
Fixes NIP-106

I think jackson is trying to serialiaze a getter that we don't need it to.  I annotated it with @JsonIgnore

What is that fixing?

authors: frankhuster larubbio

repo: motech-implementations/mim


text:
Make the OTCTextField accessible from outside UIDokan package

make the OTCTextField accessible from outside UIDokan package
applying few of the comment by @ahmdmhasn

I merged it to fix the building issue

@RaniaZeid you will have conflicts in merging your branch since Nagy has already fixed this issue and merged it.

authors: ahmdmhasn ahmdyasser ahmednaagy

repo: motoon-eg/dokan-store


text:
🛑 makerinbox.netlify.app is down

In e98bd91, makerinbox.netlify.app (https://makerinbox.netlify.app) was down:

HTTP code: 500
Response time: 3104 ms

Resolved: makerinbox.netlify.app is back up in 33397bf.

repo: moul/uptime


text:
[Feature Request] Keep the finer granular error code for MiscellaneousError

🚀 Feature Request

Motivation
Multiple different errors all mapped to MiscellaneousError ex:

https://github.com/areshand/move/blob/0747a72af49e7116ae2b54625668d8536ee086d8/language/move-core/types/src/vm_status.rs#L182
https://github.com/areshand/move/blob/0747a72af49e7116ae2b54625668d8536ee086d8/language/move-core/types/src/vm_status.rs#L187

The impact is user lacks a clear idea of what went wrong when their txn failed. Ex:
when users published modules, both the linker_error and MODULE_ADDRESS_DOES_NOT_MATCH_SENDER are mapped to this MiscellaneousError, which doesn't help user to understand what went wrong.
Pitch
Describe the solution you'd like
Keep the finer granular status code when returning the MiscellaneousError to provide more detailed error message to the users

Pulling from @sblackshear's detailed answer on discord (Thanks Sam!)
"For some historical context, I believe we used to support a much broader set of error codes, but were having difficulty with error codes committing to implementation details of the Move VM or the adapter. The current error behavior is a reaction to this experience. Error behavior is part of the VM spec, so it's important to keep it as simple/minimal as possible. That is (unfortunately) at odds with devex, but as Todd says, the intention is that this belongs in tooling outside the VM or in a layer above like the adapter"
In short, this isn't the purpose of VMStatus, as an adapter, you can use VMError as much as you want, and report this back to the developer as you see fit. The VM doesn't guarantee being stable enough to always return the same type checking error. It guarantees Yes/No answers on verification. And then guarantees the position for any Move Abort

Closing for now as it won't be something that is changed. But happy to help with sorting out any information that is missing in VMError or for strategies in logging that error

thanks for the detailed answer.

authors: areshand tnowacki

repo: move-language/move


text:
Setup custom domain (incl. SSL) for production environment

Setup custom domain (geekbites.move4mobile.io) for production environment.
After setup, Firebase will request and install a (free) SSL certificate.

Fixed.


text:
Wallet connection issue

I installed the Nightly wallet and Razor wallet, but they show up as not installed on the MOVEMENT Dapps site, including faucet.

For the above reason, I tried to replace it with the OKX wallet, but the MOVE balances of the Nightly wallet and OKX wallet are displayed differently even though they are the same wallet address.

For reason 1, I continued deleting Chrome browser cookies and reinstalling the app, but it failed.

Please reach out to the Nightly and Razor Wallet team for support.

authors: bhenhsi herbcase

repo: movementlabsxyz/movement


text:
🛑 Das Quartier CMS is down

In 6ef9f60, Das Quartier CMS (https://cms.dasquartier.org) was down:

HTTP code: 403
Response time: 213 ms

Resolved: Das Quartier CMS is back up in 15ed244.

repo: moximoti/upptime


text:
How do I generate the documentation?

We want to contribute but it is not clear how to go from index.md to the output site that we see :-P

Totally true. I'll add this to the docs right now.

Oh, right, you need to install a bunch of Ruby garbage and I don't even have Ruby set up on my new Mac properly yet. I'll get to this soon but not right now.
Related: #192

Says something... ;-)
OK :)

authors: sole tofumatt

repo: mozilla/localForage


text:
'stream is undefined' on title page

http://blog.lassus.se/files/liveprogramming.pdf
PDF.JS Build: 5b3f5a3
Message: stream is undefined
Stack: lexerGetObj()@chrome://pdf.js/content/build/pdf.js:24791
parserRefill()@chrome://pdf.js/content/build/pdf.js:24340
Parser([object Object],false)@chrome://pdf.js/content/build/pdf.js:24335
partialEvaluatorGetIRQueue((void 0),[object Object],[object Object],[object Array])@chrome://pdf.js/content/build/pdf.js:12342
pageGetIRQueue([object Object],[object Array])@chrome://pdf.js/content/build/pdf.js:218
wphSetupPageRequest(2)@chrome://pdf.js/content/build/pdf.js:27513
messageHandlerComObjOnMessage([object MessageEvent])@chrome://pdf.js/content/build/pdf.js:27440

Should be fixed by the above pull request.  Let us know if isn't and we'll update re-open the ticket.

authors: brendandahl jdm


text:
Dev build broken on chrome 97

Using gulp server and loading in Chrome 97 I get the error:
es-module-shims.js:769 ReferenceError: require is not defined
    at checkStructuredClone (compatibility.js:114:5)
    at compatibility.js:115:5

This appears to be a regression from #14392
@Snuffleupagus

Also, given that Google Chrome 98 will become the stable version in only three days my preference would definitely be that we simply WONTFIX this issue; please see https://chromestatus.com/features/schedule

I agree given that Chrome 98 will be stable in two days from now.

authors: Snuffleupagus brendandahl timvandermeij


text:
Use  element for the document properties modal

It has been recently released in Firefox:
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog
and it's available in Safari too:
https://webkit.org/blog/12445/new-webkit-features-in-safari-15-4/

Looking at https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog#browser_compatibility, we probably need to wait a little while longer since we try and keep the GENERIC PDF.js library/viewer compatible with at least the current Firefox ESR version; please note https://github.com/mozilla/pdf.js/wiki/Frequently-Asked-Questions#faq-support
Also, we really should be updating all of the overlays then (e.g. the PasswordPrompt as well) and not just the PDFDocumentProperties one.

Based on some quick tests, replacing our custom-overlays with <dialog> elements seems to mostly work just fine (although it will require some refactoring).
The only thing that didn't "just work" is the horizontal/vertical centering of the <dialog>s, since they end up at the top-left corner of the window, and I don't really understand why!?

@Snuffleupagus, would you mind to push what you did in order to try to figure out what's wrong with the positioning ?

I was, perhaps naively, assuming that by default the <dialog> elements would be centered automatically, since that's how all of the examples I found online seemed worked (although most of those were quite small/simple).
I also tried to replicate our old centering CSS, but that didn't seem to help in either when testing in both Firefox and Chrome.

would you mind to push what you did in order to try to figure out what's wrong with the positioning ?

Sure, please see https://github.com/mozilla/pdf.js/compare/master...Snuffleupagus:overlays-dialog for a very basic patch (ignore the ugly hacks in the JS code).

It works in commenting: https://github.com/mozilla/pdf.js/blob/feea2b78fab64d1b1c000ab5a0a6bb875d2a7dfe/web/viewer.css#L175
In chrome devtools:

I noticed that the dialog has margin set to auto when we've a 0 for all the elements.
So I just tried in unchecking and it worked.

I noticed that the dialog has margin set to auto when we've a 0 for all the elements.
So I just tried in unchecking and it worked.

Thank you; it seems that simply setting margin: auto; for the <dialog> CSS works fine :-)

There's still, as far as I'm concerned, the question if should perhaps wait a little while longer with making this change (given that the feature is fairly new)?
Besides that, the "only" thing left to do for the patch would be to fix-up the OverlayManager functionality to properly handle things now that <dialog> elements are used.

Actually, I think the patch(es) are mostly done now since everything seems to work as intended :-)
https://github.com/Snuffleupagus/pdf.js/compare/OverlayManager-private...Snuffleupagus:overlays-dialog?w=1

authors: Snuffleupagus calixteman


text:
Page content not instantly shown, instead blank page with spinner

Attach (recommended) or Link to PDF file here: https://lasers.llnl.gov/content/assets/docs/news/age_of_ignition_book.pdf
Configuration:

Web browser and its version: Firefox Nightly 123.0a1, 20231221052522
Operating system and its version: Debian sid/unstable all packages up to date (GNOME Shell)
PDF.js version: Whatever shipped
Is a browser extension:

Steps to reproduce the problem:

Open the URL
Scroll through the PDF pages

What is the expected behavior? (add screenshot)

When scrolling the pages should be visible right away.

What went wrong? (add screenshot)
A lot of white pages/blank pages with a spinner. The content was only shown after several seconds. Even going to already viewed pages, these were blank.
Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):

@Snuffleupagus, wdyt about caching some "large" images on the disk in using indexDB ?
In order to minimize the size, we could store them as jpeg images.

Isn't this (mostly) another case where we'd like to slightly delay rendering on scrolling, to improve overall performance?

wdyt about caching some "large" images on the disk in using indexDB ?

That might require a fair amount of care to avoid caching too much data overall since a long PDF document (e.g. with hundreds/thousands of pages) with large images on every page could still affect (another type of) memory usage negatively.
Also, you'd need to ensure that the data is properly evicted from such a cache e.g. when unloading the PDF document.

authors: Snuffleupagus calixteman paulmenzel


text:
PDF text not correctly rendered

Er æstetik en løftestang for læring.pdf
Configuration:

Web browser and its version: Google Chrome 52.0.2743.116
Operating system and its version: Microsoft Windows 10 v1607
PDF.js version: 1.5.452

Steps to reproduce the problem:

Open attached PDF in latest public demo of PDF.js

What is the expected behavior?
As rendered in Google Chrome PDF viewer: http://i.imgur.com/LXDR9VD.png
What went wrong?
As rendered in PDF.js: http://i.imgur.com/r9FwrN5.png
I should probably add that my Acrobat is not able to correctly render the PDF either, so it may be a case of the PDF document simply being too mangled to fix (or maybe a missing font).

PDF 86084efb634c2241847af0c784588e26 [1.6 Adobe PDF Library 9.9 / Adobe InDesign CS5 (7.0)] (PDF.js: 1.5.452)  viewer.js:7984:7
Warning: Not enough parameters for hhcurveto; actual: 0, expected: 4  pdf.worker.js:1263:5
Warning: Not enough parameters for hvcurveto; actual: 3, expected: 4 pdf.worker.js:1263:5
Warning: Not enough parameters for hvcurveto; actual: 2, expected: 4  pdf.worker.js:1263:5
Warning: Not enough parameters for hvcurveto; actual: 3, expected: 4 pdf.worker.js:1263:5
Warning: Not enough parameters for rcurveline; actual: 2, expected: 8  pdf.worker.js:1263:5
Warning: Found too many parameters for stack-clearing command  pdf.worker.js:1263:5
Warning: Not enough parameters for hstem; actual: 1, expected: 2  pdf.worker.js:1263:5
Warning: Not enough parameters for rcurveline; actual: 3, expected: 8  pdf.worker.js:1263:5
Warning: Not enough parameters for hvcurveto; actual: 3, expected: 4 pdf.worker.js:1263:5
Warning: Not enough parameters for vhcurveto; actual: 2, expected: 4  pdf.worker.js:1263:5
Warning: Not enough parameters for hhcurveto; actual: 0, expected: 4  pdf.worker.js:1263:5
Warning: Not enough parameters for hvcurveto; actual: 2, expected: 4  pdf.worker.js:1263:5
Warning: Not enough parameters for hhcurveto; actual: 2, expected: 4  pdf.worker.js:1263:5
Warning: Not enough parameters for hvcurveto; actual: 3, expected: 4  pdf.worker.js:1263:5
Warning: Not enough parameters for vvcurveto; actual: 3, expected: 4  pdf.worker.js:1263:5
Warning: Not enough parameters for rmoveto; actual: 0, expected: 2  pdf.worker.js:1263:5
Warning: Not enough parameters for vlineto; actual: 0, expected: 1  pdf.worker.js:1263:5
Warning: Not enough parameters for hvcurveto; actual: 3, expected: 4  pdf.worker.js:1263:5
Warning: Not enough parameters for rcurveline; actual: 3, expected: 8  pdf.worker.js:1263:5
Warning: Not enough parameters for rmoveto; actual: 1, expected: 2  pdf.worker.js:1263:5
Warning: Not enough parameters for vhcurveto; actual: 0, expected: 4  pdf.worker.js:1263:5
downloadable font: CFF: Failed validating charstring set 0 (font-family: "g_d0_f3" style:normal weight:normal stretch:normal src index:0) source: (invalid URI)  (unknown)
downloadable font: rejected by sanitizer (font-family: "g_d0_f3" style:normal weight:normal stretch:normal src index:0) source: (invalid URI)  (unknown)
downloadable font: font load failed (font-family: "g_d0_f3" style:normal weight:normal stretch:normal src index:0) source: (invalid URI)  (unknown)
Warning: Failed to load font ""g_d0_f3"": SyntaxError: An invalid or illegal string was specified  pdf.js:277:5

Did this issue get resolved in the recent versions of pdf.js?

It's not yet fixed, in fact, it looks much worse for me on Linux/Firefox than on the screenshots above (see my screenshot below), but with largely the same (perhaps a bit more specific) sanitizer errors:
PDF 110dd61fd57444010b1ab5ff38782f0f [1.4 pdfeTeX-1.21a / TeX] (PDF.js: 2.6.266) app.js:1386:4
PDF 86084efb634c2241847af0c784588e26 [1.6 Adobe PDF Library 9.9 / Adobe InDesign CS5 (7.0)] (PDF.js: 2.6.266) app.js:1386:4
Warning: Not enough parameters for hhcurveto; actual: 0, expected: 4 pdf.worker.js:1097:13
Warning: Not enough parameters for hvcurveto; actual: 3, expected: 4 2 pdf.worker.js:1097:13
Warning: Not enough parameters for hvcurveto; actual: 2, expected: 4 pdf.worker.js:1097:13
Warning: Not enough parameters for hvcurveto; actual: 3, expected: 4 2 pdf.worker.js:1097:13
Warning: Not enough parameters for rcurveline; actual: 2, expected: 8 pdf.worker.js:1097:13
Warning: Found too many parameters for stack-clearing command pdf.worker.js:1097:13
Warning: Not enough parameters for hstem; actual: 1, expected: 2 pdf.worker.js:1097:13
Warning: Not enough parameters for rcurveline; actual: 3, expected: 8 pdf.worker.js:1097:13
Warning: Not enough parameters for hvcurveto; actual: 3, expected: 4 2 pdf.worker.js:1097:13
Warning: Not enough parameters for vhcurveto; actual: 2, expected: 4 pdf.worker.js:1097:13
Warning: Not enough parameters for hhcurveto; actual: 0, expected: 4 pdf.worker.js:1097:13
Warning: Not enough parameters for hvcurveto; actual: 2, expected: 4 pdf.worker.js:1097:13
Warning: Not enough parameters for hhcurveto; actual: 2, expected: 4 pdf.worker.js:1097:13
Warning: Not enough parameters for hvcurveto; actual: 3, expected: 4 pdf.worker.js:1097:13
Warning: Not enough parameters for vvcurveto; actual: 3, expected: 4 pdf.worker.js:1097:13
Warning: Not enough parameters for rmoveto; actual: 0, expected: 2 pdf.worker.js:1097:13
Warning: Not enough parameters for vlineto; actual: 0, expected: 1 pdf.worker.js:1097:13
Warning: Not enough parameters for hvcurveto; actual: 3, expected: 4 pdf.worker.js:1097:13
Warning: Not enough parameters for rcurveline; actual: 3, expected: 8 pdf.worker.js:1097:13
Warning: Not enough parameters for rmoveto; actual: 1, expected: 2 pdf.worker.js:1097:13
Warning: CFF stem hints are in wrong order pdf.worker.js:1097:13
Warning: Not enough parameters for vhcurveto; actual: 0, expected: 4 pdf.worker.js:1097:13
Warning: Failed to load font 'g_d1_f3': 'SyntaxError: An invalid or illegal string was specified'. util.js:337:4
downloadable font: CFF : Failed validating CharStrings INDEX (font-family: "g_d1_f3" style:normal weight:400 stretch:100 src index:0) source: (invalid URI)
downloadable font: CFF : Failed to parse table (font-family: "g_d1_f3" style:normal weight:400 stretch:100 src index:0) source: (invalid URI)
downloadable font: rejected by sanitizer (font-family: "g_d1_f3" style:normal weight:400 stretch:100 src index:0) source: (invalid URI)
downloadable font: font load failed (font-family: "g_d1_f3" style:normal weight:400 stretch:100 src index:0) source: (invalid URI)

authors: Snuffleupagus Woodgnome sandeepsuthari timvandermeij


text:
taking more than 2minutes to load file of size 9mb, how can i handle this?

Here is my code
var data = base64ToUint8Array(base64String);
function base64ToUint8Array(base64) {
var raw = atob(base64);
var uint8Array = new Uint8Array(raw.length);
for (var i = 0; i < raw.length; i++) {
uint8Array[i] = raw.charCodeAt(i);
}
return uint8Array;
}
PDFJS.getDocument(data)
.then(function(pdf) {
});

Closing as incomplete, since there's no actionable information provided here.

@Snuffleupagus
Here is the pdf link. https://drive.google.com/file/d/0B7zGd0ub1kvNU0xsVmpwVzF6REk/view?usp=sharing
Well i'm loading the pdf from my local storage, not from the url.

Please provide all of the information requested in https://github.com/mozilla/pdf.js/blob/master/.github/ISSUE_TEMPLATE.md to re-open the issue (don't forget a link a working example, since code snippets are not helpful.that we can run).
When reporting an issue, please make sure that you also read https://github.com/mozilla/pdf.js/blob/master/.github/CONTRIBUTING.md.

doc 2.pdf
Configuration:

chrome
windows 8.1
pdf.js version-1.6.256
not an extension, this is a webapp

expected behaviour:
Load pdf file faster and without any crash.
went wrong:
taking more than two minutes to load the above file, after file load browser got struck.


text:
DeviceN Colorspace and Multidimensional Sampling Function Support

DeviceN support was relatively easy since its nearly the same as the separation color space.  Adding support for DeviceN will start to show our lack of support for PDF Functions.  I've added multidimensional support for sampling functions.
I expect this to fail on trace monkey page 11.  This is do to a slight color difference do to the new way we do the interpolation.  Not sure which one is more correct, but I can't tell the difference between the two.
Fixes: #745, #255 and several pdf's in the corpus report.

@pdfjsbot test

I've not 100% understand all the stuff in the patch and the math going on, but just from the basic code structure it looks good.
At some places, you use new Array(...). Can we change these to typed arrays, that are faster, or don't we know the type of the array at that point?

I expect this to fail on trace monkey page 11. This is do to a slight color difference do to the new way we do the interpolation. Not sure which one is more correct, but I can't tell the difference between the two.

How is this compared to Preview or Poppler? Does it match better or worse then before?

Have we regressed on linux for the tracemonkey paper?  I was looking at the above reftest and the colors on the chart aren't showing up correctly.  This seems to be in the current master too.

I checked out some really old commits on pdf.js and the tracemonkey paper was mis-rendered on page 11 on there too.  I think the regression was either from FF or something to do with Linux or that figure never worked in the first place on linux. Let's charge ahead and I'll open bug to look into that figure.

We haven't regressed on linux, as Yury pointed out #15 is about this issue.  Can I get some reviews or a merge?

Almost everything looks good. Was the devicen.pdf created by us?

''Almost everything looks good. Was the devicen.pdf created by us?''
It was originally an example in ps that was converted to pdf, I had it around from my old pdf reader...now I can't seem to find the link to the original.

do you remember if there was any license associated with those examples?

I've updated the test file with something I feel comfortable calling our own.

let's see if we will get the same result
@pdfjsbot test

that's not good... i guess

I guess we are hitting FBF-problem
(See also #756, #798 and https://bugzilla.mozilla.org/show_bug.cgi?id=700078)

That's not good at all.  I guess we'll need to go back to our previous FF version and try and escalate the issue in bugzilla.  I'll see if I can make an easier way to reproduce the issue tomorrow.

As I understand, the real Xserver has no such issue. Shall we just stop using Xvfb?

@pdfjsbot test

As I understand, the real Xserver has no such issue. Shall we just stop using Xvfb?

@notmasteryet, see discussion in #798 - do you know more about this?

(cleaning up the logs)
@pdfjsbot makeref

@makeref

@pdfjsbot makeref

WARNING: MD5 of file "pdfs/devicen.pdf" does not match file. Expected "b9dbf00ec6bf02fcbefbb40332713aad" computed "aac6a91725435d1376c6ff492dc5cb75"

@brendandahl, could you fix that?

authors: brendandahl jviereck notmasteryet


text:
safari 10.1 - bad fonts and italics

Link to PDF file (or attach file here):
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3847663/pdf/fnins-07-00231.pdf
Configuration:

Web browser and its version:
Safari 10.1 (12603.1.30.0.34)

Operating system and its version:
OSX 10.12.4 (16E195)

PDF.js version:
latest demo from github

Is an extension:
no

Steps to reproduce the problem:

open pdf
check font family and style of start of document
the bug is not present on previous versions of Safari

What is the expected behavior? (add screenshot)
Font should load and it's italic style display.

What went wrong? (add screenshot)
Font looks like a fall-back font, anyway no italic variant rendered.

Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):

I get a nice rendering on W7 with FF 52.0.2.

This issue appeared on Safari 10.1, which if I don't go wrong was released end of March 2017

I've just spent a couple of hours trying to understand this - we've been experiencing the same issue with a different PDF.
Safari 10 introduced support for the font loading API, so there have been some changes to the browser in this area.
FontLoader#addNativeFontFace gets called, the font is added, the loaded promise from the FontFace resolves successfully, but the font just doesn't render when drawn on the canvas. This happens reliably. Weirdly it doesn't seem to affect all fonts in the document.
I've also noticed that, sometimes, when the document re-renders it will magically start working. This happens so infrequently that it makes me doubt my sanity. It seems to be more likely to happen if you leave the window for a minute, and then trigger a render by zooming.
Forcing FontLoader.isFontLoadingAPISupported to false doesn't help either - the prepareFontLoadEvent hack also thinks the font is loaded.

Looks like a known issue.
https://github.com/bramstein/fontfaceobserver/pull/86/files
https://bugs.webkit.org/show_bug.cgi?id=165037
https://bugs.webkit.org/show_bug.cgi?id=164902
Unfortunately not easily fixed by swapping loaded with load() in FontLoader.prototype.bind
Thought: if you put a known symbol in the generated font, you could repeatedly draw that to a canvas and measure the pixels to see if the font has been loaded 😬

I experience the same problem in Chrome, when PDF.js is used embedded in Seafile.com

The dropped fonts happen very randomly. If the document was loaded before, it does not happen at all. It seems to happen more with more complex PDFs.
Hope that does help a bit. I hope we can sort this out, it‘s a real problem for us.

Hope that does help a bit. I hope we can sort this out, it‘s a real problem for us.

@Tilmn I don't think it's related to the Safari problem discussed here and it can be moved to the separate issue (but you need to provide all requested details). Also we are not familiar with Seafile.com and screenshot does not show interface of PDF.js. Please contact vendors of web site for support -- you need to provide enough details for us to reproduce the issue.

here is what it looks like on my end http://prntscr.com/ffxtuj when pdf comes from aws but when pdf is on local server, fonts render well.

i solved the problem by converting the pdf to lower version. i've tested the pdf with version 1.7 and the error occurs but when i converted the pdf to version 1.4 with ghostscript the pdf renders well.

If anybody has any other temporary solutions please share. This has become a rather large issue for us.

@wanmigs sorry to ping you, would you mind dropping a few lines on how did you do the version change with ghostscript?
I wonder if this would do the trick as well?
https://www.techwalla.com/articles/how-to-convert-pdf-files-to-an-older-format

@franky-continu  make sure to have ghostscipt installed on your server.
$new_pdf = 'path/new.pdf'; // path where to output the new pdf
$src_pdf  = 'path/src/pdf';
shell_exec( "gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dNOPAUSE -dQUIET -dBATCH -sOutputFile={$new_pdf} {$src_pdf}");
Hope that does help a bit.

Sorry to spam, but is fixed now? When will we see an update? Just for information and reference for other people experiencing these issues.

It appears they have fixed this issue at Box. Any chance this fix can be pulled into this repo as well?

I'm not sure exactly how https://github.com/box/box-content-preview/pull/332 is relevant here, since that's a downstream consumer of the PDF.js library. (And what they did is simply to apply a work-around, one that could very well end up breaking more things than it fixes.)
There's no currently no solution to this on the PDF.js side. However, the fact that this appears to be limited to a particular version of just one browser, strongly suggests that it's a font handling bug in Safari (rather than in PDF.js).

All right, sorry I'm not familiar with the innards of either library. Was just hopeful. If there is no other fix than waiting for a Safari update, is there at least a workaround other than converting the files? I don't want to be dramatic but we are actually losing customers over this (as our customer base is agencies, who are predominantly on Safari).

Open Journal Systems uses PDF.js library so I have been following this thread. Regarding the statement that this is a Safari bug, I actually know that Apple disagrees.
One journal editor has been in contact with Apple regarding the issue and they think that the issue is with PDF.js. So waiting for a fix in the Safari end could last forever.

I'm not 100% sure if we're talking about the same "Safari bugs" but I've seen a great improvement in Safari's rendering under the Safari Technology Preview, so hoping those fixes get rolled out to general Safari soon:
https://developer.apple.com/safari/technology-preview/

It definitely should be fixable. Just now, I uploaded this file to Dropbox, and previewed it. The first time, everything went perfect, so I assumed they were using a different engine. Then I refreshed, and saw the exact issues I reported today. Now, every time I open the file, there is a flash of it looking perfect while it loads (this might be an image preview but I don't think so, as I was definitely able to interact with it the first time — even select the text), and then when it finishes loading all the text suddenly shifts. You can check it out in Safari to see if you see the same thing happening, here's the link to Dropbox.
So this establishes Safari is capable of displaying it properly. There must be something that's triggered in the library, that makes Safari go bad. If we find out what it is, I bet we can fix it!

There must be something that's triggered in the library, that makes Safari go bad. If we find out what it is, I bet we can fix it!

I can help a bit: modern Safari (as any other modern browsers) use Font Loading API (see https://drafts.csswg.org/css-font-loading/). PDF.js waits on Promise coming from browser to know when fonts are loaded (see code around fontLoadPromises variable).
@rijk can you override my analysis and confirm that PDF.js at fault here and PDF.js is doing something different for Safari or not using the API properly?

@yurydelendik, not sure what you mean with "can you override my analysis", but maybe my screen recording helps? Also, I've noticed the font issues don't seem to happen for fonts that are not installed on the system (so are loaded from the PDF). This would also point to the font loading being the issue.
I cannot tell you if the bug is in Safari or PDF.js. But the combination seems to break it; triggering the font loading just completely breaks the rendered page. And that's exactly what the Box fix seems to consist of as well: disabling the font loading API for Safari.

And that's exactly what the Box fix seems to consist of as well: disabling the font loading API for Safari.

Yes. We can introduce a workaround to disable font loading for some browsers. Using disableFontFace looks too extentsive. I would just suggest to check if it's a Safari at https://github.com/mozilla/pdf.js/blob/master/src/display/font_loader.js#L301 to just disable native font loading or add a flag similar to disableFontFace or disableRange (we blacklist Safari there as well, see https://github.com/mozilla/pdf.js/blob/master/src/shared/compatibility.js#L626).
P.S. can see https://bugs.webkit.org/show_bug.cgi?id=172210 also present in Chrome

Actually, PDFJS.disableFontFace = true seems to work! I don't know what the downsides are (performance I guess?), but at least we have a short-term workaround with this.

Actually, PDFJS.disableFontFace = true seems to work! I don't know what the downsides are (performance I guess?), but at least we have a short-term workaround with this.

PDFJS.disableFontFace = true enabled low quality internal font rendering engine -- no subpixel-AA and increased memory-CPU usage. It's a last resort option when font-faces are disabled by browser. We have intermediate fallback to load font without Font Loading API for legacy browser -- it shall be used here.

Note that this issue appears to be resolved in Safari 11.

Closing since this issue is fixed upstream.

authors: MSchip Snuffleupagus THausherr Tilmn ajnyga danlester evadne franky-continu paolocaminiti rianmcguire rijk timvandermeij wanmigs yurydelendik


text:
Stub out Firefox addon Telemetry wrapper

We are planning to remove the addon histogram APIs from Firefox
Telemetry in bug 1353295.
pdf.js is one of 3 projects that ever used them.
The easy solution here seems to just stub out all calls that use addon histograms, that should keep things working just as before.
linting passes fine locally.
I had trouble getting the tests to run due to grunt makeref running into md5 mismatches.

@yurydelendik for review?

With these changes, I think that you can also remove the following lines since they shouldn't be neecessary: https://github.com/mozilla/pdf.js/blob/master/extensions/firefox/content/PdfJsTelemetry-addon.jsm#L15-L16.

I had trouble getting the tests to run due to grunt makeref running into md5 mismatches.

Unfortunately, running e.g. gulp test won't help with testing the add-on code.
You can however use gulp firefox to build the add-on locally and then install that in Firefox (pleases note that xpinstall.signatures.required needs to be turned off, since a locally built add-on won't be signed).

Thank you for the patch.

Is there a reason why we cannot just remove the file altogether? I don't really see why we need to keep this around if it's not used anymore, especially since the add-on is primarily used for development purposes.

We use it at PdfStreamConverter.jsm, we can further rename it to have a "-stub", similar to pdfjs-stub.jsm

Thank you. In that case we do probably need to keep it around for compatibility. Renaming it to have a -stub suffix, together with removing https://github.com/mozilla/pdf.js/blob/master/extensions/firefox/content/PdfJsTelemetry-addon.jsm#L15-L16, would be good, but it's also fine as-is then.

authors: Snuffleupagus georgf timvandermeij yurydelendik


text:
Provide custom messages for the no-restricted-globals ESLint rule, and refactor the .eslintrc files (PR 9868 follow-up)

Without providing useful (custom) error messages for the no-restricted-globals rule, see https://eslint.org/docs/rules/no-restricted-globals, it's quite likely that the rule will be incorrectly disabled rather than the required globals being imported as intended.
To reduced duplication of the no-restricted-globals rule in multiple .eslintrc files, it's instead moved to the top-level .eslintrc file and disabled as needed on a folder/file basis outside of /src and /web.

Nice find! I didn't know that was possible, but it should help to make it clear why we have this.

authors: Snuffleupagus timvandermeij


text:
Enable fullscreen API

Is there a way to enable the fullscreen API for the qbrt shell?
i e a user loads Youtube into a qbrt shell, accesses a video, clicks the "fullscreen" button and receives a fullscreen representation of the video?
I remember back in the Xulrunner days you had to set a preference (in prefs.js) for that.
However, that no longer seems to work. Or perhaps I'm just not remembering the correct preference (I tried setting full-screen-api.enabled to true and full-screen-api.approval-required to false).
Setting window.fullScreen to true from a chrome privileged scope isn't always an option, so enabling the requestFullscreen API would be highly appreciated.

Thanks.
Strangely, updates to the prefs.js profile file aren't properly propagated in my build.
Even deleting the profile folder inside the user directory didn't fix this. Some weird monkey business, albeit one I'm quite certain I can figure out.
Anyhow. I then explicitly set full-screen-api.enabled to true from within the shell's main.js and can confirm that this does indeed work.

qbrt copies its application files (including prefs.js) into the Firefox installation dir after it installs Firefox into the dist/ dir. If you make changes to qbrt's app files, you need to node ./bin/install-xulapp.js afterward to get qbrt to re-copy those files. (Warning: that script is internal and unstable, so it's likely to change.)

Ah. Ok. Didn't know that.
I assumed it was using its own set of prefs stored inside the user directory, like XULRunner applications of yonder.
In any case, I added something to your other ticket.
Unless you want a very specific implementation, this should be a "low hanging fruit".

Hmm, it still works for me with a local application and a recent version of Firefox. I added pref("full-screen-api.enabled", true); to the defaults/preferences/prefs.js file, ensured the file got copied into the right part of the dist/ directory via node ./bin/install-xulapp.js, and then added document.documentElement.requestFullscreen(); to examples/hello-world-html/app.js. Running that app then caused it to enter fullscreen mode.

Yep.
Just tried that. I can confirm that actually works.
It seems the issue comes down to an implementation detail of my app (which uses mozbrowser for its views).
Well. No biggies. I'll fix that eventually.
Right now I'd just like to get down and dirty with some qbrt internals. Adding require() to my internal fork yesterday afternoon stoked a fire in me. :cat: :dog:

authors: Happy-Ferret mykmelez

repo: mozilla/qbrt


text:
Add a comment in case of a recent needinfo on inactive user

We could just comment to inform in case of a recent needinfo (without doing any action). After it passes a time threshold we do the proper action (forward or clear the ni).
Originally posted by @suhaibmujahid in https://github.com/mozilla/relman-auto-nag/pull/1396#discussion_r871578081

That'd be ideal, but maybe not super easy to implement? We'd also have to avoid re-adding the same comment when the bot runs again
Originally posted by @marco-c in https://github.com/mozilla/relman-auto-nag/pull/1396#discussion_r871587883

We could have a separate tool that runs hourly or daily and targets only recent needinfos (already excluded in #1396). In this way, we provide useful information in a timely fashion.

repo: mozilla/relman-auto-nag


text:
Fix clipping problems when saving estimate wav file for Wham ConvTasNet

based on PR #148 made by Mathieu for librimix :
https://github.com/mpariente/asteroid/pull/148/files

Looks good thanks !

authors: mpariente tux-coder

repo: mpariente/asteroid


text:
Fix example filename error

Fix example filename error

Well done! Thank you very much for your contribution.
Modification like this one are always welcome...
Massimiliano

repo: mpatacchiola/deepgaze


text:
key "message" not present

I have a bot that's just sitting idle in a channel and printing all Events to stdout for me to look at. Saw this one time.
{"type":"reaction_added","user":"U02JZ29PL","item":{"type":"message","channel":"C02JBL1SN","ts":"1445714383.000132"},"reaction":"skull","event_ts":"1445715911.712116"}
key "message" not present
Please report this failure to the github issue tracker

I have reported it upstream.

@mpickering I don't think this is an upstream issue.
This is happens we there is a emote reaction.
Here is another example:
{"type":"reaction_added","user":"...","item":{"type":"message","channel":"...","ts":"1452030494.000018"},"reaction":"heart","event_ts":"1452030526.291127","ts":"1452030526.000019"}
key "message" not present
Please report this failure to the github issue tracker

Either "message" needs to be treated as an optional field as in #32 or there needs to be a new ReactionItem that can handle this.

So the docs have since been updated. https://api.slack.com/events/reaction_added
It seems that it is different to an Item but then doesn't specify what can actually be included.

I ran into this issue, too:
key "message" not present
Please report this failure to the github issue tracker

I also ran into this issue in the same situation as @mitchellwrosen and @joehillen. My echo bot was just sitting around and someone reacted to a message.
{"type":"reaction_added","user":"U0RGKR9NG","item":{"type":"message","channel":"D11L2687L","ts":"1461005789.000006"},"reaction":"+1","item_user":"U11KA7R62","event_ts":"1461006517.813615","ts":"1461006517.000007"}
Error in $.item: failed to parse field item: key "message" not present
Please report this failure to the github issue tracker

I believe @mpickering is aware of the issue, but slack's docs don't actually include the schema of a reaction_added's item, so he's not sure how to parse it.

More people use this library than I thought so I will look to fix it shortly but I am quite busy. Mitchell is right that the docs don't provide a specification for the abbreviated object but I will at least add something so that there isn't a runtime error.

Fixed.

Thank you! :)

authors: Gabriel439 joehillen mitchellwrosen mpickering tfausak

repo: mpickering/slack-api


text:
Custom description for fields

Is it possible to have custom text in the "Description" field:

You can add the following to an endpoint entry in index.md. Remove the @! Git comments take the pound as bold mark up...
@ #### Parameters
Parameter | Type | Status | Description
--------- | ------- | ------- | ------- | -----------
id | string |  required  | must be valid UUID (32 characters)
from_time | string |  required  |  UNIX_TIMESTAMP not a date!!
to_time | string |  optional  | datetime
Then call php artisan api:update to refresh the html. Personally I don't use Form request validation so I'm doing this manually. It doesn't appear to overwrite either if you regenerate the entire doc.

Tracking this in #294. We should add this in 3.0

authors: akoskm emackie9 shalvah

repo: mpociot/laravel-apidoc-generator


text:
Update CLI tests

test_only_unique_errors_reported_verbose: add an assertion about std_out.count('UnidentifiedImageError') that is specific to the verbose mode
add test_only_unique_errors_reported (equivalent to the above in non-verbose mode)
remove test_quiet_and_verbose_are_mutually_exclusive (this is guaranteed by the argparse module and does not need to be tested)

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (67d98de) 96.44% compared to head (f3b9846) 96.44%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #26   +/-   ##
=======================================
  Coverage   96.44%   96.44%
=======================================
  Files           6        6
  Lines         225      225
  Branches       36       36
=======================================
  Hits          217      217
  Misses          8        8

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

authors: codecov-commenter mportesdev

repo: mportesdev/pictureshow


text:
TPA Localizability example

Goal
To provide an example of developing of an application that can be localized into one or more languages.
Key points;
Ensure  that:

the application can be localized easily
that the executable code is separated from its resources (loosely coupled)

To get more visit:
Globalizing and Localizing .NET Framework Applications

#31 Reviewed the code - refactoring - only unimportant changes.
The open problem with this example is that there is hard-coded reference to resources, i.e. an application that is ready for localization is separated into two conceptual blocks, a block that contains all user interface elements and a block that contains executable code.
I have added TPA Localizability example  #34 to describe this drawback.
Anyway for the sake of simplicity this example works as is and there is no need for improvements.

repo: mpostol/TP


text:
Nested quantity kinds

We need to define the best possible logic for nested quantity kinds. The library's results should be correct and not surprise anyone.
For our analysis, let's use two simplified trees of length and dimensionless quantities:
flowchart TD
    length["length
[m]"]
    length --- height["height"]
    length --- width["width"]
    dimensionless["dimensionless
[one]"]
    dimensionless --- angular_measure["angular_measure
[rad, one]"]
    dimensionless --- solid_angular_measure["solid_angular_measure
[sr, one]"]

Before we dig into details, let's mention that the discussion below relates to the above trees. If a user wants to model any of the above quantities differently to provide more or less safety, it is OK and possible, but it is not the subject of the discussion below. Let's scope on how the code should work when the trees are defined as above.
We model the above dimensionless quantities this way because ISQ explicitly states that angular measure should be allowed to be measured in both one and rad. The same is true for solid angular measure with the unit sr. This is why we nest their kind trees in the tree of dimensionless quantities. They are defined with a special is_kind tag in the definition:
inline constexpr struct angular_measure final       : quantity_spec<dimensionless, arc_length / radius, is_kind> {} angular_measure;
inline constexpr struct solid_angular_measure final : quantity_spec<dimensionless, area / pow<2>(radius), is_kind> {} solid_angular_measure;

This allows us not only to state that the trees nest but also to assign unique units for them:
inline constexpr struct radian final    : named_unit<"rad", metre / metre, kind_of<isq::angular_measure>> {} radian;
inline constexpr struct steradian final : named_unit<"sr", square(metre) / square(metre), kind_of<isq::solid_angular_measure>> {} steradian;

As a reminder, according to ISQ, it should be possible to compare, add, and compare quantities of the same kind. Additionally, in mp-units, when we just spell a unit, we say that we mean any quantity of its kind.
For lengths it is simple to reason about:
auto height = isq::height(1 * m);
auto width = isq::width(1 * m);
auto q1 = height + 1 * m;              // isq::height(2 * m)
auto q2 = height + isq::length(1 * m); // isq::length(2 * m)
auto q3 = height + width;              // isq::length(2 * m)

We can also compare q1 to:
bool cmp1 = (q1 == 2 * m);
bool cmp2 = (q1 == isq::length(2 * m));
bool cmp3 = (q1 == isq::width(2 * m));

However, it gets more interesting when we have several subkinds in our tree:
auto angle = isq::angular_measure(1 * rad);
auto solid_angle = isq::solid_angular_measure(1 * sr);
auto q4 = angle + 1 * one;                         // isq::angular_measure(2 * rad)
auto q5 = 1 * rad + 1 * one;                       // 2 * rad
auto q6 = angle + dimensionless(1 * one);          // ???
auto q7 = 1 * rad + dimensionless(1 * one);        // ???
auto q8 = angle.in(one) + dimensionless(1 * one);  // ???
auto q9 = angle + solid_angle;                     // ???
auto q10 = angle.in(one) + solid_angle.in(one);    // ???
auto q11 = 1 * rad + 1 * sr;                       // ???

The q4 and q5 cases are fairly easy. Adding angular measure and a quantity that behaves as any quantity of the dimensionless tree results in angular measure. Please also note that a unit of one is promoted to rad here to provide a more user-friendly result.
Should q6 - q8 compile? What should be the result? We could end up with a dimensionless quantity. This would force angular measure to go outside of its kind tree. Also, the unit could not be rad, which would conflict with unit promotion in q4 and q5. What is the physical sense of such an equation anyway? Maybe it should not compile? Maybe in order to make such things compile, a user would need to explicitly convert angular measure to dimensionless and then continue with arithmetics?
q9 and q11 are also interesting. Should they not compile or just result in a dimensionless quantity?
And what about comparisons? Let's see the following options:
bool cmp4 = (q4 == 2 * rad);                             // OK
bool cmp5 = (q4 == isq::angular_measure(2 * rad));       // OK
bool cmp6 = (q4 == isq::angular_measure(2 * one));       // OK
bool cmp7 = (q4 == 2 * one);                             // OK
bool cmp8 = (q4 == dimensionless(2 * one));              // ???
bool cmp9 = (q4 == isq::solid_angular_measure(2 * sr));  // Compile-time error?
bool cmp10 = (q4 == 2 * sr);                             // Compile-time error?

cmp4 - cmp7 are probably reasonable. What about the rest?
What about conversion rules? We know that every height is length and not every length is height. Also, height is never a width but both are lengths. This is why we have the following logic:
static_assert(implicitly_convertible(isq::height, isq::length));
static_assert(explicitly_convertible(isq::length, isq::height));
static_assert(castable(isq::width, isq::height));

What about nested kinds? How should those behave?

Should we allow implicit conversion from angular measure to dimensionless or should it be explicit to make it straight that we are going outside of its tree?
Explicit conversion from dimensionless to angular measure is probably fine.
We probably should not be allowed to convert from solid angular measure to angular measure even with a cast.

Let's discuss those cases. Ideally, the conversions, comparisons, and additions should be consistent with each other and not surprising to our users.

Regarding mixing two subkinds, my personal opinion is that q9 - q11 and cmp9 - cmp10 should not compile (even with an explicit quantity_cast) as this requires an operation on two separate kinds (even though they also share a common dimensionless kind).
If someone really wants to add or compare them, they should first be converted to dimensionless and then added or compared. For example:
auto q = dimensionless(angle.in(one)) + dimensionless(solid_angle.in(one));

Answering the remaining questions is much harder as an angular measure belongs to both dimensionless and angular measure kinds.
Counts and ratios are dimensionless, and they should be convertible to the root of the hierarchy. It should also be possible to add and compare them.
Technically, an angular measure is also defined in terms of a ratio (arc_length / radius), but in my opinion, it is not just a ratio.  It has its own unit, expresses angles, and has its own subtree of its kind. Moreover, some scientists have argued for years to make it a strong dimension and a base quantity in ISQ.
Let's assume that for our analysis, a dimensionless quantity we use is a count of cows. Should it really be possible to add a count of cows and an angle without any explicit annotations?
There are two options here:

We can provide usual conversions and upcasting rules. We can say that every angular measure is a dimensionless quantity, so it can always be implicitly converted to it. Also, adding dimensionless and angular measure should result in dimensionless. This, however, has a few issues:

Does adding a count of cows to an angle make sense?
This may mean that one + rad should not be rad but one. This also means that isq::angular_measure(1 * rad) + 1 will result in isq::angular_measure[one].
This also puts a question mark next to the statements from the previous comment. If angular measure and solid angular measure are implicitly convertible to dimensionless, then why they can't be added to each other?

angular measure kind (a subkind) could be considered having a priority here. This means that upcasting to the root of its hierarchy is implicit, but going beyond it (from the root of angular measure kind outside to dimensionless quantities) requires an explicit cast. This would:

Preserve one + rad -> rad
Provide a proper reasoning for the statements from the previous comments (angular measure and solid angular measure should not compile without a cast)
Result with q6 - q8 and cmp8 not compiling without a cast.

It doesn't feel good for me if auto q5 = 1 * rad + 1 * one; compiles without cast.
Which, apparently desired, use case am I overlooking here that would otherwise not work?

ISO 80000 explicitly states that both one and rad are valid units for angular measure. If this was not the case, then angular measure would not be a dimensionless quantity, and we would not have this issue :-( I just fixed the graph in the first post to make it more explicit.
BTW, the same applies to auto q = 1 * rad + 1;.

Are there any other arguments besides the, admittedly strong, 'ISO 80000 compliant' argument?

This is how SI works as well:

Plane and solid angles, when expressed in radians and steradians respectively, are in effect also treated within the SI as quantities with the unit one. ... However, it is a long-established practice in mathematics and across all areas of science to make use of rad = 1 and sr = 1.

rad is an alias to one as it is defined as rad = m/m. As it is equivalent to one, it disappears in many derived units. For example, as stated in https://mpusz.github.io/mp-units/latest/users_guide/systems/strong_angular_system, a proper unit for angular momentum should be J s / rad instead of just J s.

Expanding on @mpusz 's example of counting cows there are a number of cases of developing custom dimensionless quantity for digital audio. For example to describe time expressed in digital samples or a digital sampling rate it is necessary to define a quantity for a count of digital samples:
inline constexpr struct sample_count final : quantity_spec<dimensionless, is_kind> {} sample_count;
inline constexpr struct sample_duration final : quantity_spec<isq::time> {} sample_duration;
inline constexpr struct sample_rate final : quantity_spec<isq::frequency, sample_count / isq::time> {} sample_rate;

inline constexpr struct sample final : named_unit<"Smpl", one, kind_of<sample_count>> {} sample;

inline constexpr auto smpl = sample;

Another digital audio example of counting is time expressed in musical note durations and beats-per-minute requires a counting a number of musical beats:
inline constexpr struct beat_count final : quantity_spec<dimensionless, is_kind> {} beat_count;
inline constexpr struct beat_duration final : quantity_spec<isq::time> {} beat_duration;
inline constexpr struct tempo final : quantity_spect<isq::frequency, beat_count / isq::time> {} tempo;

inline constexpr struct beat : named_unit<"beat", one, kind_of<beat_count>> {} beat;
inline constexpr struct quarter_note final : named_unit<"q", one, kind_of<beat_duration>> {} quarter_note;
inline constexpr struct beats_per_minute final : named_unit<"bpm", quarter_note / non_si::minute> {} beats_per_minute;

I agree with @mpusz on what should not compile for adding or comparing sub-kinds of dimensionless both because these separate counts should not be compatible quantities and we would lose type safety and understandability if they operations on a beat_count would result in a dimensionless quantity.
Variations on the examples of above with these audio examples:
auto beats = beat_count(1 * beat);
auto samples = sample_count(1 * smpl);

auto q4 = beats + 1 * one; // beat_count(2 * beat)

// might be okay if these examples compile but it does seem a little confusing what the meaning or purpose
// if it does compile the result should probably be a beat_count quantity
// using a cast would be more clear so "option 2" above making this not compile is okay
auto q6 = beats + dimensionless(1 * one);

// might be okay if these examples compile but it does seem a little confusing what the meaning or purpose
// if it does compile the result should probably be a raw unit of smpl
// using a cast would be more clear so "option 2" above making this not compile is okay
auto q7 = 1 * smpl + dimensionless(1 * one);

// I'm not sure this is useful to allow this without a cast
// using a cast would be more clear so "option 2" above making this not compile is okay
auto q8 = beats.in(one) + dimensionless(1 * one);

// it should not be possible to add unrelated counts; it would not make sense to add a count of cows either
auto q9 = beats + samples;

// I'm not sure this is useful to allow this without a cast
// using a cast would be more clear so "option 2" above making this not compile is okay
auto q10 = beats.in(one) + samples.in(one);

// just like q9 this also does not make sense
auto q11 = 1 * beat + 1 * smpl;

// I'm not sure this is useful to allow this without a cast
// using a cast would be more clear so "option 2" above making this not compile is okay
bool cmp8 = (q4 == dimensionless(2 * one));

// just like q9 this also does not make sense
bool cmp9 = (q4 == sample_count(2 * smpl));

// just like q9 this also does not make sense
bool cmp10 = (q4 == 2 * smpl);

Is dimensionless our only example that has nested quantity kinds? Am I correct that our solution would work for any nested quantities even for custom dimensions and this is not special casing for dimensionless?

I have nearly finished implementing this. The library framework is much simpler now. Many concepts could be simplified (e.g., UnitOf and QuantitySpecOf). Those should allow the use of one as a unit of angular measure, but not allow the use of rad as a unit of dimensionless (as not every dimensionless is an angle and rad is reserved for angles).
The only side effect I saw so far that is worth mentioning happened for geographic.h. spherical_distance() does a quantity_cast:
return quantity_cast<isq::distance>(earth_radius * central_angle);

This does not work because it says that the unit of km * rad is not compatible with the requested quantity isq::distance. We no longer allow measuring dimensionless in rad, and isq::angular_measure (the associated quantity of rad) is no longer implicitly convertible to dimensionless.
The solution for it is:
return quantity_cast<isq::distance>((earth_radius * central_angle).in(earth_radius.unit));

where we explicitly remove the rad part and convert the unit to just km. Then, we perform a quantity_cast on the remaining quantity.
Please let me know your thoughts, especially if you think that it is an issue (SI typically treats angles as dimensionless in derived quantities and their units). I personally think that it adds a bit more safety than SI does daily. isq::distance quantity does not mention any angular component to rad is not allowed for it.

Resolved with https://github.com/mpusz/mp-units/commit/06cbfae3b36b12e3dd6ddb8f3b3b1751730f6a44

authors: Spammed mpusz rothmichaels

repo: mpusz/mp-units


text:
Enable overriding diagnostic symbols and highlights

As per https://github.com/nvim-neo-tree/neo-tree.nvim/commit/245457a9d1074b190793add27629cc37fc2974c7.

Closed as of #20.


text:
🛑 CVSR Trivia Night [cvsrtrivianight.org] is down

In dc22a87, CVSR Trivia Night [cvsrtrivianight.org] (https://cvsrtrivianight.org) was down:

HTTP code: 0
Response time: 0 ms

Resolved: CVSR Trivia Night [cvsrtrivianight.org] is back up in 747167a.


text:
🛑 Robert Ferdowsmakan [torreyhillsoms.com] is down

In 3f0da99, Robert Ferdowsmakan [torreyhillsoms.com] (https://torreyhillsoms.com) was down:

HTTP code: 0
Response time: 0 ms

Solved


text:
How to properly provide initial state for modules

When creating a module with getModuleBuilder().module('namespace') I can provide initial state to the module, however, when providing the store root with initial state by calling using builder.vuexModule({ state: initialRootState }) do I also have to provide the initial module state here?
Are there differences in providing the state through the module itself or through the root? And which one "wins" if I provide both but with different values?

Good question! :smiley:
The ability to pass state to the builder.vuexStore(...) is a side-effect of me using vuex's StoreOptions type as an optional argument to the vuexStore method.  This was intended not for setting the state, but to give access to some of the other less-used StoreOptions: plugins, strict.
tbh, I'm not sure what happens if you provide both.  I would just set the initialState on the modules themselves.

Hmm.. I see.
It might be be a good idea to disallow passing initial state to the store root by changing the type of StoreOptions to one without the state key.
Something like this should do the trick (requires typescript >= 2.8 however):
type StoreOptionsWithoutState = Pick<StoreOptions<RootState>, Exclude<keyof StoreOptions<RootState>, 'state'>>;

A downside I see (and ran in to in my own code) is that it would now no longer be possible to initialize fields managed directly by the root store (and not by a module).
If I have a store shape like the following I could initialize the submodule when I first create it, but I can then no longer initialize rootProperty.
type MyRootState = {
	rootProperty: string;
	submodule: {
		submoduleProperty: string;
	}
}

In my own project I got around this by typing my initial root state so that all entries/keys belonging to submodules are removed, leaving only the actual root properties:
// state slice managed by top-level modules
type ModuleRootStates = {
	subModule1Namespace: SubModule1.ModuleRootState;
	subModule2Namespace: SubModule2.ModuleRootState;
};

// state slice managed directly by the store root
type OwnRootState = {
	rootProperty1: string;
	rootProperty2: string;
};

// the actual rootstate
export type RootState = ModuleRootState&OwnRootState;

Then I have the modules initialize themselves when creating them with .module('namespace', initialModuleRootState), and have the root initialize the remaining properties in .vuexStore({ state: initialOwnRootState}) (though it does require casting ownRootState to any). This seems to work, but it's brittle, because it requires me to repeat the namespaces of all top-level modules both when creating the modules and in the state types.
Maybe I'm just being too particular about my state shape though and mixing modules with root-level properties is a bad idea.
Great little library by the way! 👍

authors: KCMertens mrcrowl

repo: mrcrowl/vuex-typex


text:
🛑 Asgard is down

In e2df7ea, Asgard (https://asgard.$DOMAIN) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Asgard is back up in c3ac6ba.

repo: mrdavidkovacs/status