Caching packages or ability to setup different package source

The issue
My builds usually do something like
RUN set -ex \
  && apk add --no-cache --virtual .build-deps some apps \
  && (build something) \
  && apk del .build-deps

Which means every time I change something e.g. in code then creating image results in fetching all dependencies again, and again, and again. You can imagine this is slow. Splitting RUN into several calls doesn't make sense for me as this would slightly increase resulting image size.
Solution
Is there a way to point apk to some kind of local package storage? Which I could setup by fetching only necessary packages? Or some kind of host package cache?

Ok I found out https://github.com/vektorlab/apk-cache and just realized I would like to probably also cache other things so probably I would need more general squid proxy.
So nvm, closing :D


Coverage Issues

Add a check to fail coverage when the gradle test configuration contains no classes
Merge coverage and publish to coveralls
Find a way to ignore generated-sources in coverage metrics

Coverage levels are pretty good and all the modules are covered. Closing this issue


'DefaultAzureCredential' object has no attribute 'signed_session'

I'm trying to create a python script to interact with Azure DevOps and I have problem with authentication. I don't want to use PAT.
This works but I noticed it is recommended to use azure.identity instead of azure.common.credentials.get_azure_cli_credentials().
from azure.common.credentials import get_azure_cli_credentials
from azure.devops.connection import Connection

credential = get_azure_cli_credentials()[0]
connection = Connection(base_url="https://dev.azure.com/org_name", creds=credential)
core_client = connection.clients.get_core_client()
projects = core_client.get_projects()

When I try to use DefaultAzureCredential from azure.identity, I get following error:

'DefaultAzureCredential' object has no attribute 'signed_session'

from azure.identity import DefaultAzureCredential
from azure.devops.connection import Connection

credential = DefaultAzureCredential()
connection = Connection(base_url="https://dev.azure.com/org_name", creds=credential)
core_client = connection.clients.get_core_client()
projects = core_client.get_projects()

azure.identity = 1.12.0
azure.devops = 7.1.0b3
azure.common = 1.1.11

I have prepared a working workaround using the msrest.authentication library. Unfortunately msrest is also deprecated, but it looks like Microsoft still uses it in their projects (az cli).
from azure.identity import DefaultAzureCredential
from msrest.authentication import BasicTokenAuthentication
from azure.devops.connection import Connection

credential = DefaultAzureCredential()
token = credential.get_token('499b84ac-1321-427f-aa17-267ca6975798/.default')
credentials = BasicTokenAuthentication({'access_token': token.token})
organization_url = 'https://dev.azure.com/myorg'
connection = Connection(base_url=organization_url, creds=credentials)

core_client = connection.clients.get_core_client()
get_projects_response = core_client.get_projects()
if get_projects_response:
    for project in get_projects_response:
        print(project.name)

@msl0 workaround worked for me. thanks!

Bumping

Bump

Bump


BrowserConfig.xml still has a trailing slash

Hi
I noticed that certain html resources have a trailing slash, even though [NoTrailingSlash] has been specified.
<meta name="msapplication-config" content="@Url.RouteUrl(HomeControllerRoute.GetBrowserConfigXml)">

produces

<meta name="msapplication-config" content="/browserconfig.xml/">

I noticed the manifest.json also has the same problem

The NoTrailingSlashAttribute is used to tell the RedirectToCanonicalUrlAttribute filter that the URL does not need a trailing slash. It does not help with the IUrlHelper although it would be nice if it did. I'm not sure there is an extensibility point for me to add this feature, so for now I use .TrimEnd('/') when using the IUrlHelper with these particular URL's.
Perhaps you could raise an issue on the ASP.NET MVC GitHub project, explaining the reason why some URL's need trailing slashes removed and also linking to this issue. If not, I'll raise one when I get a chance.
I've fixed the above issue and will do a patch release. Let me know if you find any others.

Oh thank you for clearing that up it makes sense after you explained. I'll see if I can raise an issue but perhaps they will listen to you more hehehe

Fixed. I have raised this issue on the ASP.NET MVC GitHub page.

Excellent good work, hopefully they can have a fix for this well done


When using keywords (any) without keywords (all) the query is misformed

There is an extra AND prepended, which breaks Diffbot.

Fixed in 0.4


PR: Standardize StackView component

Resolves #52
Merge message:
Used the standard syntax to declare the StackView component.

Was not needed


Working great on windows 10 but not on linux

Description
So I have the following in Start.php file:
<?php

use CharlotteDunois\Yasmin\Client;
use React\EventLoop\Factory;

require(__DIR__ . '/vendor/autoload.php');

$loop = Factory::create();
$client = new Client([], $loop);

echo "Starting\n";

$client->on('ready', function() use ($client){
	echo 'Successfully logged into ' . $client->user->tag . PHP_EOL;
});

$client->login('token-here')->done();
$loop->run();

Composer and everything is configured properly and found working.
Details
PHP Version: 7.2
OS: Linux Ubuntu 18.04
Additional Details
This file when executed on windows 10 works fine and the bot goes online. However when the same file is executed on ubuntu vps then the bot never goes online its like the loop never runs.

The provided MCVE works for me without any issues on Debian Jessie. Make sure that OpenSSL is working correctly (maybe try https://github.com/CharlotteDunois/Yasmin#windows-and-ssl?).
You can further debug Yasmin by listening to the debug event:
$client->on('debug', function ($msg) {
    echo $msg.PHP_EOL;
});

Ok I will try debugging.

Adding request "gateway/bot" to ratelimit bucket
Retrieved item from bucket "gateway"
Executing item "gateway/bot"
Request for item "gateway/bot" failed with exception RuntimeException

Adding debug produced the following result. I have yet to try OpenSSL

I checked ssl. its working corretly. I also tried setting path to ca file but still no good.
Retrieved item from bucket "gateway"
Executing item "gateway/bot"
Got response for item "gateway/bot" with HTTP status code 200
Request for item "gateway/bot" failed with exception Error

Since the last message mentions Error, you should've seen an uncaught exception in your console. Since you did not, please make sure the following is true:

the PHP binary you use to run the script is minimum 7.1 - if you use php Start.php, run php -v
display_errors is set to On using php -i | grep display_errors
error_reporting is set to E_ALL or -1 using php -i | grep error_reporting

php -v:
PHP 7.3.5-1+ubuntu18.04.1+deb.sury.org+1 (cli) (built: May  3 2019 10:00:24) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.5, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.3.5-1+ubuntu18.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies

php -i | grep display_errors:
display_errors => STDOUT => STDOUT

php -i | grep error_reporting
error_reporting => 32767 => 32767

Quick update:
I started listening to this
$client->on("error", function(\Throwable $error){
	echo $error->getMessage() . PHP_EOL;
});

The following error was reported.

This is my Start.php script.
<?php

use CharlotteDunois\Yasmin\Client;
use React\EventLoop\Factory;

require(__DIR__ . '/vendor/autoload.php');

$loop = Factory::create();
$client = new Client([], $loop);

echo "Starting\n";

$client->on('ready', function() use ($client){
	echo 'Successfully logged into ' . $client->user->tag . PHP_EOL;
});

$client->on('debug', function($message){
	echo $message . PHP_EOL;
});

$client->on("error", function(\Throwable $error){
	echo $error->getMessage() .  If you installed it through a different binary where bcmath is loaded, then you've just bypassed the check. Otherwise it would be a bug in composer, however the former is a much more likely case.
Long story short: Install and enable the bcmath extension.

Error fixed. Bot is now working. bc-math extension was missing

Sorry for wasting your time. Just wanted to say one more thing, This library is great! Thanks for sharing it.


docs: add npm example in development section

Add example of how to run development with npm
Also, make yarn example one command line instead of 2

Thanks for the test!


logical defs for photoreceptor activity suclasses

based on this logical def:
  (this is currently in a branch)
We can define 'blue light photoreceptor activity' etc using the same pattern, but adding new classes under 'detection of light stimulus'
But note: we also have 'blue light signaling pathway'  & 'cellular response to blue light'.

Need to discuss what the design pattern will be for receptor activity.  There is a draft here:
https://github.com/geneontology/go-ontology/blob/master/src/design_patterns/draft_patterns/membrane_receptor_activity_draft.yaml

LD has been removed - this will come up in the DP project if we need to fix it
https://github.com/geneontology/go-ontology/projects/16


Support v4/v6

-4 and -6 to specify, default to v4 if both are available

Closing, marked project as inactive


[AMORO-2665] Replace deperated classes under ams.server by classes of ams.api

Why are the changes needed?

Close #2665.
Brief change log

How was this patch tested?

[ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[ ] Add screenshots for manual tests if appropriate

[ ] Run test locally before making a pull request

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not documented)

OptimizerGroupMetrics

work all done

I found some other places that need improvement. PTAL.

done


Laravel 9.x Compatibility

This is an automated pull request from Shift to update your package code and dependencies to be compatible with Laravel 9.x.
Before merging, you need to:

Checkout the l9-compatibility branch
Review all comments for additional changes
Thoroughly test your package

If you do find an issue, please report it by commenting on this PR to help improve future automation.

:warning: The latest version of Laravel has a dependency for phpunit/phpunit of ^9.3. If you would like to also upgrade your tests, you may run the PHPUnit 9 Shift for free.

:alembic: Using this package? If you would like to help test these changes or believe them to be compatible, you may update your project to reference this branch.
To do so, temporarily add Shift's fork to the repositories property of your composer.json:
{
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/laravel-shift/workos-php-laravel.git"
        }
    ]
}

Then update your dependency constraint to reference this branch:
{
    "require": {
        "workos-inc/workos-php-laravel": "dev-l9-compatibility",
    }
}

Finally, run: composer update

@adamzinder, note, currently this will require a release/bump in the workos-php package before finalizing for this package. Reference this comment.


Fruit Game First Playtest Thoughts and Changelist

Run speed, jump, fall speed, acceleration and deceleration feel great.
Need wall jump
Need enemies that shoot projectiles at you or some bullet bill type shit
Checkpoint system or easier way to get to different parts of the level so it doesn't take forever to get to the areas
Possible Jetpack
Arrows that point to coins on edges of screen almost like a quest marker

Make Camera More Sexy


PostgreSQLSeverity.error : Attempting to execute query, but connection is not open.

Occasionally a service I have written will get into a state where the connections are exhausted in closed state, and the executor pool is unusable. This might be because the database suddenly becomes unavailable and restores itself, but the connection pool hasn't reset (reconnected the connections in the pool).
Is there a way to sanity check the pool and ensure that the connections are usable?
[ERROR] - PostgreSQLSeverity.error : Attempting to execute query, but connection is not open.
#0      _PostgreSQLExecutionContextMixin._query (package:postgres/src/connection.dart:444)
#1      _PostgreSQLExecutionContextMixin.query (package:postgres/src/connection.dart:427)
#2      PostgreSqlExecutor.query (package:angel3_orm_postgres/src/orm_postgres.dart:59)
#3      PostgreSqlExecutorPool.query.<anonymous closure> (package:angel3_orm_postgres/src/orm_postgres.dart:167)
<asynchronous suspension>
#4      Pool.withResource (package:pool/pool.dart:127)
<asynchronous suspension>
#5      StationManager.findByIdent (package:aggregation_server/orm/managers/station_manager.dart:24)
<asynchronous suspension>

I would expect that the pool would self-manage itself and ensure that it is healthy, and if a query was executed it would reconnect as much as possible.

Thanks @dukefirehawk , looking forward to that.

Checking in, any luck @dukefirehawk ? I'm still getting plagued by these errors.

Moving this to top of the priority list to be worked on.

@kevinelliott PostgreSqlExecutor currently does not handle re-connection when db connection is broken. This is being worked on and will be included in the next release. In the meantime, you may want to try out PostgreSqlPoolExecutor which supports db re-connection. Under the hood, it is using postgres_pool package.  See the example below in using it.
Future<void> configureServer(Angel app) async {
  try {
    // var connection = await connectToPostgres(app.configuration);
    // await connection.open();
    // var executor = PostgreSqlExecutor(connection, logger: app.logger);

    var executor = getPostgreSqlPoolExecutor(app.configuration);

    app
      ..container.registerSingleton<QueryExecutor>(executor)
      ..shutdownHooks.add((_) => executor.close());
  } catch (e) {
    app.logger.severe("Failed to connect to PostgreSQL. ORM disabled.", e);
  }
}

PostgreSqlPoolExecutor getPostgreSqlPoolExecutor(Map configuration) {
  var postgresConfig = configuration['postgres'] as Map? ?? {};
  return PostgreSqlPoolExecutor(PgPool(
    PgEndpoint(
      host: postgresConfig['host'] as String? ?? 'localhost',
      port: postgresConfig['port'] as int? ?? 5432,
      database: postgresConfig['database_name'] as String? ??
          Platform.environment['USER'] ??
          Platform.environment['USERNAME'] ??
          '',
      username: postgresConfig['username'] as String?,
      password: postgresConfig['password'] as String?,
    ),
    settings: PgPoolSettings()
      ..maxConnectionAge = Duration(hours: 1)
      ..concurrency = 5,
  ));
}

PostgreSqlPoolExecutor

Thanks, I've gone ahead and implemented and deployed based on this, and will let you know if I see the issue surface again.

Resolved in the latest release angel3_orm_postgres 6.1.0

Using the suggested code above, I have not had the issue come back for a month now. However, I have not yet tried to use what was released in 6.1.0... what would need to change to use what is built in?
Also, is there support for multiple servers, specifically as they change from read-write to read-only due to failover?

Great to hear that. The connection retry is done inside PostgreSqlExecutor, so it is transparent to the caller. Nothing need to be changed if already using it.
Multiple servers are not supported. However, if PostgreSQL is run in multi master replication setting behind a load balancer, the connection retry should enable it to work.

Can you suggest a load balancer that is intelligent enough to know which is the active read-write and which is the active read-only?

I do not have a specific recommendation for dart backend since have not done enough testing in that area to make the call. However, the following documents provide a couple solutions that have been around for a long time.

https://www.postgresql.org/docs/current/high-availability.html
https://severalnines.com/blog/comparing-load-balancers-postgresql/


Add TAO and YOLO models post processors

Add TAO and YOLOv5/6/7/X models post processors so that they can be used effectively with Savant.

@denisvmedyantsev @dorgun let us close that. The ticket doesn't move.


I wanna be able to pin project folders that are showed in the Recent section on the Get Started tab

Sometimes I can have similarly named folders on the Recent list but I may not be working on all of them at the same time. If I could pin the folders that I am currently working more frequently with it would really be nice.

So a pin icon on the left side of the recently opened folders would be good. And then perhaps separating the pinned folders from the other recent folders.

\duplicate https://github.com/microsoft/vscode/issues/63057

Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for similar existing issues. See also our issue reporting guidelines.
Happy Coding!


Fixed: Avoid warning of babel-plugin-webpack-loader in boilerplate

Close #185

Current coverage is 67.21%

Merging #188 into next will not affect coverage as of 5b69abe

@@             next    #188   diff @@
=====================================
  Files          39      39
  Stmts         485     485
  Branches        0       0
  Methods         0       0
=====================================
  Hit           326     326
  Partial         0       0
  Missed        159     159

Review entire Coverage Diff as of 5b69abe

Powered by Codecov. Updated on successful CI builds.


Deactivate uac action rule

Motivation and Context
We need to be able to deactivate UACs on a certain date, when we no longer want to allow respondents to launch EQ.
What has changed
Added new action type.
How to test?
Run ATs.
Set up an action rule of type DEACTIVATE_UAC.
Links
Trello: https://trello.com/c/MvZRwX7P

 Generic Survey - UAC deactivation rule (13)


The Plugin No Longer Clicks the Skip Ad button automatically

^

I came to say this too.

YT changed the button name , now its named "skip" instead of "skip ad"
the code cant "see" the new button


enable ghc-9.4 builds

for some context on what remains to get ghc-9.4-* tested builds in CI, see https://github.com/ndmitchell/hlint/pull/1410#issuecomment-1213320218
the ghc-9.4.1 build itself is locally testable:
[2 of 2] Linking /Users/shayne/tmp/ghc-lib/<IP_ADDRESS>20813/ghc-9.4.1/dist-newstyle/build/x86_64-osx/ghc-9.4.1/hlint-<IP_ADDRESS>20813/x/hlint/build/hlint/hlint [Objects changed]
Testing (with refactoring)
Source annotations ...................
Input/outputs .............................................................................................................................................................
Hint names .......
Hint annotations .......

Tests passed (914)
+ exit 0

Seems like we are waiting on ghc-exactprint to release?

Seems like we are waiting on ghc-exactprint to release?

it wouldn't hurt to have one. it's blocking ghc-9.4.1 builds in CI

Just adding the failures I see when trying to build with GHC 9.4.2:
[ 4 of 60] Compiling GHC.Util.ApiAnnotation ( src/GHC/Util/ApiAnnotation.hs, dist/build/GHC/Util/ApiAnnotation.o, dist/build/GHC/Util/ApiAnnotation.dyn_o )

src/GHC/Util/ApiAnnotation.hs:39:28: error:
    Not in scope: data constructor ‘EpaDocCommentNamed’
    Suggested fix:
      Perhaps use ‘EpaDocComment’ (imported from GHC.Parser.Annotation)
   |
39 | comment_ (L _ (EpaComment (EpaDocCommentNamed s) _)) = s
   |                            ^^^^^^^^^^^^^^^^^^

src/GHC/Util/ApiAnnotation.hs:40:28: error:
    Not in scope: data constructor ‘EpaDocCommentPrev’
    Suggested fix:
      Perhaps use ‘EpaDocComment’ (imported from GHC.Parser.Annotation)
   |
40 | comment_ (L _ (EpaComment (EpaDocCommentPrev s) _)) = s
   |                            ^^^^^^^^^^^^^^^^^

src/GHC/Util/ApiAnnotation.hs:41:28: error:
    Not in scope: data constructor ‘EpaDocCommentNext’
    Suggested fix:
      Perhaps use ‘EpaDocComment’ (imported from GHC.Parser.Annotation)
   |
41 | comment_ (L _ (EpaComment (EpaDocCommentNext s) _)) = s
   |                            ^^^^^^^^^^^^^^^^^

src/GHC/Util/ApiAnnotation.hs:42:28: error:
    Not in scope: data constructor ‘EpaDocSection’
   |
42 | comment_ (L _ (EpaComment (EpaDocSection _ s) _)) = s
   |                            ^^^^^^^^^^^^^
[ 5 of 60] Compiling GHC.Util.Brackets ( src/GHC/Util/Brackets.hs, dist/build/GHC/Util/Brackets.o, dist/build/GHC/Util/Brackets.dyn_o )

src/GHC/Util/Brackets.hs:40:7: error:
    Not in scope: data constructor ‘HsRecFld’
   |
40 |       HsRecFld{} -> False
   |       ^^^^^^^^

src/GHC/Util/Brackets.hs:51:7: error:
    Not in scope: data constructor ‘HsBracket’
    Suggested fix: Perhaps use ‘HsBracketTc’ (imported from GHC.Hs)
   |
51 |       HsBracket{} -> True
   |       ^^^^^^^^^
[ 6 of 60] Compiling GHC.Util.DynFlags ( src/GHC/Util/DynFlags.hs, dist/build/GHC/Util/DynFlags.o, dist/build/GHC/Util/DynFlags.dyn_o )
[ 7 of 60] Compiling GHC.Util.FreeVars ( src/GHC/Util/FreeVars.hs, dist/build/GHC/Util/FreeVars.o, dist/build/GHC/Util/FreeVars.dyn_o )

src/GHC/Util/FreeVars.hs:112:18: error:
    Not in scope: data constructor ‘HsBracket’
    Suggested fix: Perhaps use ‘HsBracketTc’ (imported from GHC.Hs)
    |
112 |   freeVars (L _ (HsBracket _ (ExpBr _ e))) = freeVars e
    |                  ^^^^^^^^^

src/GHC/Util/FreeVars.hs:113:18: error:
    Not in scope: data constructor ‘HsBracket’
    Suggested fix: Perhaps use ‘HsBracketTc’ (imported from GHC.Hs)
    |
113 |   freeVars (L _ (HsBracket _ (VarBr _ _ v))) = Set.fromList [occName (unLoc v)]
    |                  ^^^^^^^^^

src/GHC/Util/FreeVars.hs:115:17: error:
    Not in scope: data constructor ‘HsConLikeOut’
    |
115 |   freeVars (L _ HsConLikeOut{}) = mempty -- After typechecker.
    |                 ^^^^^^^^^^^^

src/GHC/Util/FreeVars.hs:116:17: error:
    Not in scope: data constructor ‘HsRecFld’
    |
116 |   freeVars (L _ HsRecFld{}) = mempty -- Variable pointing to a record selector.
    |                 ^^^^^^^^

src/GHC/Util/FreeVars.hs:121:17: error:
    Not in scope: data constructor ‘HsRnBracketOut’
    |
121 |   freeVars (L _ HsRnBracketOut{}) = mempty -- Renamer produces these.
    |                 ^^^^^^^^^^^^^^

src/GHC/Util/FreeVars.hs:122:17: error:
    Not in scope: data constructor ‘HsTcBracketOut’
    |
122 |   freeVars (L _ HsTcBracketOut{}) = mempty -- Typechecker produces these.
    |                 ^^^^^^^^^^^^^^

src/GHC/Util/FreeVars.hs:159:21: error:
    Not in scope: data constructor ‘HsRecField’
    Suggested fix:
      Perhaps use one of these:
        ‘HsRecFields’ (imported from GHC.Hs),
        ‘HsGetField’ (imported from GHC.Hs),
        ‘HsRecSel’ (imported from GHC.Hs)
    |
159 |    freeVars o@(L _ (HsRecField _ x _ True)) = Set.singleton $ occName $ unLoc $ rdrNameFieldOcc $ unLoc x -- a pun
    |                     ^^^^^^^^^^

src/GHC/Util/FreeVars.hs:160:21: error:
    Not in scope: data constructor ‘HsRecField’
    Suggested fix:
      Perhaps use one of these:
        ‘HsRecFields’ (imported from GHC.Hs),
        ‘HsGetField’ (imported from GHC.Hs),
        ‘HsRecSel’ (imported from GHC.Hs)
    |
160 |    freeVars o@(L _ (HsRecField _ _ x _)) = freeVars x
    |                     ^^^^^^^^^^

src/GHC/Util/FreeVars.hs:162:30: error:
    Not in scope: type constructor or class ‘HsRecField'’
    Suggested fix:
      Perhaps use one of these:
        ‘HsRecField’ (imported from GHC.Hs),
        ‘HsRecFields’ (imported from GHC.Hs),
        ‘LHsRecField’ (imported from GHC.Hs)
    |
162 | instance FreeVars (LocatedA (HsRecField' (AmbiguousFieldOcc GhcPs) (LocatedA (HsExpr GhcPs)))) where
    |                              ^^^^^^^^^^^

src/GHC/Util/FreeVars.hs:163:18: error:
    Not in scope: data constructor ‘HsRecField’
    Suggested fix:
      Perhaps use one of these:
        ‘HsRecFields’ (imported from GHC.Hs),
        ‘HsGetField’ (imported from GHC.Hs),
        ‘HsRecSel’ (imported from GHC.Hs)
    |
163 |   freeVars (L _ (HsRecField _ _ x _)) = freeVars x
    |                  ^^^^^^^^^^

src/GHC/Util/FreeVars.hs:165:30: error:
    Not in scope: type constructor or class ‘HsRecField'’
    Suggested fix:
      Perhaps use one of these:
        ‘HsRecField’ (imported from GHC.Hs),
        ‘HsRecFields’ (imported from GHC.Hs),
        ‘LHsRecField’ (imported from GHC.Hs)
    |
165 | instance FreeVars (LocatedA (HsRecField' (FieldLabelStrings GhcPs) (LocatedA (HsExpr GhcPs)))) where
    |                              ^^^^^^^^^^^

src/GHC/Util/FreeVars.hs:166:18: error:
    Not in scope: data constructor ‘HsRecField’
    Suggested fix:
      Perhaps use one of these:
        ‘HsRecFields’ (imported from GHC.Hs),
        ‘HsGetField’ (imported from GHC.Hs),
        ‘HsRecSel’ (imported from GHC.Hs)
    |
166 |   freeVars (L _ (HsRecField _ _ x _)) = freeVars x
    |                  ^^^^^^^^^^

src/GHC/Util/FreeVars.hs:192:18: error:
    Not in scope: data constructor ‘HsRecField’
    Suggested fix:
      Perhaps use one of these:
        ‘HsRecFields’ (imported from GHC.Hs),
        ‘HsGetField’ (imported from GHC.Hs),
        ‘HsRecSel’ (imported from GHC.Hs)
    |
192 |    allVars (L _ (HsRecField _ _ x _)) = allVars x
-----------------------------------------------------------------------------
    |                  ^^^^^^^^^^
[ 8 of 60] Compiling GHC.Util.HsDecl  ( src/GHC/Util/HsDecl.hs, dist/build/GHC/Util/HsDecl.o, dist/build/GHC/Util/HsDecl.dyn_o )
[ 9 of 60] Compiling GHC.Util.Scope   ( src/GHC/Util/Scope.hs, dist/build/GHC/Util/Scope.o, dist/build/GHC/Util/Scope.dyn_o )

src/GHC/Util/Scope.hs:37:19: error:
    • Couldn't match type ‘GHC.Types.PkgQual.RawPkgQual’
                     with ‘Maybe StringLiteral’
      Expected: Maybe StringLiteral
        Actual: ImportDeclPkgQual GhcPs
    • In the expression: ideclPkgQual x
      In an equation for ‘pkg’: pkg (L _ x) = ideclPkgQual x
      In an equation for ‘scopeCreate’:
          scopeCreate xs
            = Scope $ [prelude | not $ any isPrelude res] ++ res
            where
                pkg :: LImportDecl GhcPs -> Maybe StringLiteral
                pkg (L _ x) = ideclPkgQual x
                res :: [LImportDecl GhcPs]
                res
                  = [x |
                       x <- hsmodImports xs,
                       pkg x /= Just (StringLiteral NoSourceText (fsLit "hint") Nothing)]
                ....
   |
37 |     pkg (L _ x) = ideclPkgQual x
   |                   ^^^^^^^^^^^^^^
[10 of 60] Compiling GHC.Util.SrcLoc  ( src/GHC/Util/SrcLoc.hs, dist/build/GHC/Util/SrcLoc.o, dist/build/GHC/Util/SrcLoc.dyn_o )

src/GHC/Util/SrcLoc.hs:21:47: error:
    • Couldn't match expected type: GHC.Data.Strict.Maybe BufSpan
                  with actual type: Maybe a0
      NB: ‘GHC.Data.Strict.Maybe’
            is defined in ‘GHC.Data.Strict’
                in package ‘ghc-lib-parser-<IP_ADDRESS>20822’
          ‘Maybe’ is defined in ‘GHC.Maybe’ in package ‘base-<IP_ADDRESS>’
    • In the second argument of ‘RealSrcSpan’, namely ‘Nothing’
      In the expression: RealSrcSpan (anchor (getLoc o)) Nothing
      In an equation for ‘getAncLoc’:
          getAncLoc o = RealSrcSpan (anchor (getLoc o)) Nothing
   |
21 | getAncLoc o = RealSrcSpan (anchor (getLoc o)) Nothing
   |                                               ^^^^^^^

Hi @LeventErkok

Just adding the failures I see when trying to build with GHC 9.4.2:
...

(1) For the avoidance of doubt, there is no issue building hlint (HEAD) with ghc-9.4.2:
$ cd ~/project/hlint
$ cabal new-build
Resolving dependencies...
Build profile: -w ghc-9.4.2 -O1
...
[2 of 2] Linking /Users/shaynefletcher/project/hlint/dist-newstyle/build/x86_64-osx/ghc-9.4.2/hlint-3.4.1/x/hlint/build/hlint/hlint

(2) If we try to build hlint-3.4.1 (the most recently released) using ghc-9.4.2 we (correctly) fail to get a build-plan:
cd ~/tmp
cabal get hlint-3.4.1
cd hlint-3.4.1
cabal new-build
❯ cabal new-build
Resolving dependencies...
Error: cabal: Could not resolve dependencies:
[__0] trying: hlint-3.4.1 (user goal)
[__1] next goal: ghc-lib-parser (dependency of hlint +/-ghc-lib)
[__1] rejecting: ghc-lib-parser-<IP_ADDRESS>20822, ghc-lib-parser-<IP_ADDRESS>20807
(conflict: hlint +/-ghc-lib => ghc-lib-parser>=9.2 && <9.3)
[__1] trying: ghc-lib-parser-<IP_ADDRESS>20729
[__2] next goal: base (dependency of hlint)
[__2] rejecting: base-<IP_ADDRESS>/installed-<IP_ADDRESS> (conflict: ghc-lib-parser =>
base>=4.14 && <4.17)
...

This is by design. Building a 9.2 parse tree ghc-lib-parser with a 9.4 compiler is not supported.
(3) The "errors" reported  I guess result from attempting to work-around the constraint  in (2) by doing e.g. cabal new-build --allow-newer=ghc-lib-parser:
src/GHC/Util/ApiAnnotation.hs:39:28: error:
    Not in scope: data constructor ‘EpaDocCommentNamed’
    Suggested fix:
      Perhaps use ‘EpaDocComment’ (imported from GHC.Parser.Annotation)
   |
39 | comment_ (L _ (EpaComment (EpaDocCommentNamed s) _)) = s
   |                            ^^^^^^^^^^^^^^^^^^

The attempted build-plan is invalid and this build failure is not indicative of an error.

Thanks @shayne-fletcher
That's correct indeed. So, would be great to have a release of the HEAD to hackage? Is there some reason that can't happen?

Hmm - what changed in HEAD that means it works? Since it isn't in the changelog... But I'll make a release shortly

The comment from Levent suggests that things work better once we make a release of HEAD to Hackage. Either that's true (in which case something changed) or false (and it should already work)?

the latter i think. nothing has changed particularly. since https://github.com/ndmitchell/hlint/pull/1410 we have been able to build with ghc-9.4.1 (& ghc-9.4.2) we just haven't been able to get CI green due to apply-refact.

OK, so we were missing the GHC 9.4 parse tree upgrade in the changelog (my bad). We probably work with GHC 9.4, but the apply-refact won't work there yet. I'll push out a release.

@ndmitchell Thanks! I can confirm that the new release works with GHC 9.4.2.


Recreate session if transaction is aborted

I have found that Cloud Spanner has a mechanism to increase the lock priority of the session if a transaction on the session was aborted: https://cloud.google.com/spanner/docs/reference/rest/v1/TransactionOptions#retrying-aborted-transactions
This mechanism looks fine for real-world application to prevent the same transaction from being wounded multiple times, but in spanner-cli, it makes the result of subsequent transaction inconsistent. See #98 for example.
To make the result of the transaction consistent over subsequent transactions, I changed the CLI to recreate the Cloud Spanner's session if transaction is aborted.
close: #98

Thanks for your review!


Apache 2.4 unable to load precompressed JavaScript files when using with Laravel Blade, but it works on nginx

ISSUE TYPE

Bug Report

Checklist

[X] .env file is attached
[x] docker-compose.override.yml is attached (if it exists): it doesn't exist
[x] Custom configs from cfg/ dir are attached (if customized): No customization has been made yet
[X] docker-compose logs and log/ output is added
[X] I've looked through the docs: https://devilbox.readthedocs.io/en/latest/
[X] I've looked through existing issues: https://github.com/cytopia/devilbox/issues

Docker Files:
docker_files.zip
OS / ENVIRONMENT

Host operating system and version: Windows 10 Version 1809 (OS Build 17763.316)
(Windows) Native Docker or Docker Toolbox: Windows Native Docker
Docker version:  <IP_ADDRESS> 2019-01-16
Docker Compose version: 1.23.2, build 1110ad01
(Linux) Is SELinux enabled?: NO
What git commit hash are you on?: cc6de2dfa187642010585dae7a77b53069fdd97d (v 0.15)

SUMMARY

I think this is a problem with Apache loading compressed JavaScript files,
STEPS TO REPRODUCE

Install Laravel
Extract all test files in test_files.zip to the root of laravel
Boot up Devilbox
Go to localhost/test
Check on Console

EXPECTED BEHAVIOUR

The page with JavaScript should be loaded properly.
This is an outcome when I tried with nginx 1.14.2. It is stable and never shows any error

ACTUAL BEHAVIOUR

The page cannot load JavaScript files when I tried with Apache 2.4. Sometimes, it works but most of the time it fails.

FILES
Due to the size of Metronic template, I cannot upload the whole source code here
test_files.zip

Do you have some inline JS script in the view?

@crystal-rhodes Can you go to view source and open the vendor.bundle.js in new tab?

If those bundled js files are actually gzipped, you need to force apache to send the right encoding type for them...but you don't want to force it for all js files, just ones in a folder or some other way to filter .
Here is an apache 2.4 example that did it by renaming the file .js.gz (but any directory or tag that selects only these files would work):
<Files "*.js.gz">
    Header append Content-Encoding gzip
    Header set Content-Type text/javascript
    Header append Vary Accept-Encoding
</Files>

If those bundled js files are actually gzipped, you need to force apache to send the right encoding type for them...but you don't want to force it for all js files, just ones in a folder or some other way to filter .

@science695 is this something that Nginx does by default, whereas Apache 2.4 not?

In nginx, there are some modules to work with it: ngx_http_gzip_static_module.
http://nginx.org/en/docs/http/ngx_http_gzip_static_module.html

If the js files would be gzipped, @crystal-rhodes would attached the files accordingly. But the attachments are simple and plain js files.
Also, you can clearly see that the dashboard.js and fullcalendar.js is throwing some cannot read property of undefined and $ is not defined. This indicates that the js files are properly loaded and further interpreted by the browser. I think that they are loaded in an incorrect order (like fullcalendar before jQuery, etc). But I think that this is out of scope here.

@crystal-rhodes any updates from your side regarding the comments posted here?


form_open_multipart requires an action

There was a recent change to form_open() allowing the absence of the first parameter (action) and it would automatically create an action for the current page.
Since form_open_multipart() is calling form_open() and the first parameter of form_open_multipart() isn't optional, this will cause an error when using form_open_multipart() with no parameters.
Solution: Make the first parameter of form_open_multipart() optional.
Reference: https://bitbucket.org/ellislab/codeigniter-reactor/src/3361a4532b7e/system/helpers/form_helper.php#cl-97

Fixed in #211.


Fix #365

Fixes issue #365 (maybe more).
Changes:
fix of processing of parenthesized expressions that start with comments
add tests
the trailing comments are still the same (incorrect placement), but they do not affect the syntax (can be addressed in a future PR)
blank line preservation: seems no new problems with this
This PR is a continuation of PR #425

CI is currently failing on master too.


Module for including params only works once

Using: hyper-react 0.10.0, opal 0.9.4
When I try and modularize params like below for some components. This works if i include in one component.
class Bar
  include React::Component
  include OtherModule
  include DefaultParams
  render(:div) do
    params.foo
  end
end
module DefaultParams
  def DefaultParams.included(mod)
    mod.send :param, :foo, type: String, default: :bar
  end
end

But if I include in 2, it does not.
class Bar
  include React::Component
  include OtherModule
  include DefaultParams
  render(:div) do
    params.foo
  end
end
class Baz
  include React::Component
  include OtherModule
  include DefaultParams
  render(:div) do
    params.foo
  end
end
module DefaultParams
  def DefaultParams.included(mod)
    mod.send :param, :foo, type: String, default: :bar
  end
end

Which causes this error in console:
kernel.rb:1052
Uncaught $NameError {name: "DefaultParams", message: "uninitialized constant Object::DefaultParams", stack: "↵    at SingletonClass_alloc.$new (http://localhos…00/assets/corelib/runtime.self.js?body=1:1767:17)"}

The OtherModule is a set of app wide constants but no functional code.

good use case... I'm on vacation but maybe @zetachang can have a look... I must say the error seems bizarre!!!

Maybe DefaultParams need to be initialized before defining class Bar & Baz?

What would be best practices for doing that? Calling from the top level component?

What I mean is to put this part
module DefaultParams
  def DefaultParams.included(mod)
    mod.send :param, :foo, type: String, default: :bar
  end
end

at the top of your file or require if first before all component subclass get loaded.

Ah, the issue was actually unrelated. I was using reactrb auto-import, but I didn't do a
require './components/default_form_params' before trying to import this file in multiple places. On the plus side this now works nicely :)


[NP-681] document dao to replace file/blob daos

Added Document File
File encoded into base64 String on the client side and put to the documentFileDAO
related pr: https://github.com/nanoPayinc/NANOPAY/pull/9866

@Mykola97 we don't support 'select' on the file dao correct?
Thinking this is a perfect place for PROJECTION - which can avoid pulling the blob, and we would only retrieve on 'find'.


Monkey patch BigDecimal to remove requirement for patched crystal

@z64 should we spec this?

After this gets merged, we can also re enable spec's. (Revert https://github.com/greenbigfrog/discordtipbot/commit/bb0552cec45fa5748c2f94ae9f44508a59f6d9e8 )


Few quick questions

Hey there,
I started playing around with the library last night, it seems fantastic! A few quick questions if you don't mind.

Is it at all somehow possible to force color consistency in the terminal in any way that you know of? I attempted to run a test in a few different terminal and they all had different results due to terminal themes and things of that nature. I was hoping there might be a way to temporarily disable or override terminal theme colors to make the app itself consistent.

What are the colors that are actually available? I tried to simply put grey (just to test I also put gray), but both came back as error. It seemed a bit odd that cyan was available in one of the themes, but grey cause issue.

What is the best way to force a template to become the application default instead of the built-in default? If I have one I have made and I want that to always be "default". I know you can use the selector in the demo, but the original actual built in default is always the first one to load. Either by setting which one to use as default at the start of the application, or possibly changing what the built-in default is without modifying core code?

Though you may not be able to answer, I figured it is worth a try. I have only been using Go for about 2 weeks, so I am far from an expert yet. I was wondering if it is possible to use this library as well as another console ui library at the same time? I love the buttons and controls this provides but also like how some of the text areas work in another library. I know with this you have to run the mainloop, and one of the other libraries also uses a mainloop, so I was not sure if it's possible to run them at the same time. It would be somewhat nested.
An example is, I wanted to have a window and a frame of left side menu of buttons using this library and then when you click on one of them there would be a right side frame and inside of that have a text area from another library. So perhaps if the func main() ran the mainloop of this library but then the button press called another function which contained the mainloop of the other library? I suppose that is just something I might have to test out.

Anyways, thanks for all your hard work on this library!
Can't wait to put it to good use. : )
Thanks,
-MH

Hi!
Thank you!

I do not know a way to do this. And I doubt there is a way to do it. The library always thinks that it sends certain colors and it has no clue how these numbers (0 through 7) would be transformed by a terminal emulator.
You can see available  colors in the file textutil.go. In the beginning there is map of color names and their values. In the same file by the end there are functions StringToColor and ColorToString that show how to  make Bold/Italic/Bright color and how they look
Do you mean how to use a theme as default one? You can do it line main demo does: please see demos\maindemo\clui_demo.go and its function mainloop - it sets theme at start. But to do it,  you must provide a directory with the theme inside always. Sometimes it is inconvenient.  You can hack the sources and change ThemeReset in theme.go - and change in it colors to any you like. Third way(it is not implemented yet) - provide a method to add a custom theme from structure in memory along with existing theme loader. But the function must be robust and do validation (e.g, nobody must replace default theme because having a default theme allows people to omit colors/characters in their own themes)
I do not think it is possible - they would fight for terminal and the most probable result is that only one library displays its data. Even simple fmt.Printf does not work - termbox-go overwrites the screen.

Thanks, I appreciate the info!
Sorry for so many questions, I am just trying to make best use of this as I can. So far in the short time I have worked with it, it has been great. I was wondering if there was a way to somehow limit the amount of space in which the drop shadow of the buttons comes down, and also limit the width of the buttons? I tried a few different things such as ui.fixed and things of that nature, but the buttons keep on taking up the entire width.
It can be seen here. https://i.imgur.com/4iIKmPB.gifv
I would like to keep the content window and the border frame larger width, but limit the width of the actual buttons, and also not have them take up so much room height wise because of the drop shadow. Perhaps even removing it completely might be an option depending on how it looked.
Also, if working in Horizontal, is there a way to cause an element to drop to the next line, similar to adding in a linebreak for elements without having to try and put it into it's own new frame? Similar question for when working with Vertical, a way to keep two elements on the same line and not automatically drop it to the next line? Or so I have have to take the multiple elements that I want to either be veritical / horizontal, put them in a frame and set the position explicitly and then just create another frame for the next set of elements?

if there was a way to somehow limit the amount of space in which the drop shadow of the buttons comes down

Drop shadow is only 1 character height and width. So, the only way to limit its size is to 1) turn shadow off 2) use for shadow different set of characters, e.g half-height ones. None of ways is available in the library at this moment

limit the width of the buttons
At this moment the size of all buttons in a group is the size of the biggest button. And a button cannot be smaller than its text+2 spaces around it. So, the only way to make buttons smaller is to set shorter title for the longest one - it is Discord Settings * at this moment

No worries, I got it all figured out how I liked it for the most part. : D
I created a fork and changed a up a few things,
Some areas I liked buttons with no shadow and some with, so I created a new buttons type and a few other things.
I am quite pleased with how it's turning out!

Look great!
Anyway, I think making shadows slimmer(at list bottom shadow that looks so big) is a good idea and I'll think of it

That would be great. I like the shadows, but as it is, it's just a bit too big. Slimmer would be perfect.

I made bottom shadow slimmer. I did not decrease the right-side shadow because I  did not find a character that has filed only its top-left quarter. Anyway, even with slim bottom shadow buttons look nicer now. Three shadow types availabe: Full, Half, and None. Please see, demos\buttons for different type of shadows.

Great news.  I will check it out first thing in the morning.  Much appreciated.  :+1:

This is looking much better, thanks for that. I did notice this one thing though, it seems like somewhere in the rand of a 1px gap somehow in the vertical part of the shadow. It is honestly not a huge deal to me, it is a bit strange though and I wanted to share it with you.


Update guide_grid.rb

Add Subdivisions

Ah, sorry man. I though I saw my message on the forum - that I'd already added your code snippet.  I just mentioned GitHub as a future suggestion - sorry, I should have been more clear.
However, have uploaded v0.2 which include your code snippet. So now the user can configure the grid upon creating. I also added the option to adjust it after the fact from the context menu.
Appreciate the contribution! :+1:

I'm not able to automatically merge this pull request, can you pull the latest changes into your fork?

@brotuser : do you need assistance syncing your branch up with this one?

oh sorry dude :D just saw this.... haven't checkt my mail. will report back after work. in like 3-4 hours.

No worries. Take your time. I just wanted to check if you were stuck. I didn't know how experienced with git you were.

I'll just recreate my fork and redo my changes for now. can't auto sync for some reason.


Getting requests.exceptions.HTTPError: 400 Client Error: Bad Request exception

It is b/c invalid referrer. Possible solution is to add a user agent and referrer to request header. e.g.
headers = {'User-agent': 'Mozilla/5.0', 'referer': 'http://stats.nba.com/scores/'}

it's because of the user-agent not the referer. It was fixed a few days a go but I think it's not up in pypi yet. You might want to try to clone the repo instead.

Actually you are right it is the referer.

There are also issues with the TeamList and Player functions. They seem to be due to the '_endpoint' definitions in the classes. For the TeamList class, the true URL doesn't have the forward slash after 'commonteamyears'. I tried hard coding in the endpoint as 'commonteamyears?&LeagueID=00', but then the issue is the forward slash at the end of the request.
The link to the JSON file for the TeamList class should be: 'http://stats.nba.com/stats/commonteamyears?&LeagueID=00'.
I believe that removing the final '/' from the 'BASE_URL' constant in the init.py should fix this, but I'm not sure of the repercussions on the rest of the functions.

+1, but it seems to be fixed in git master branch.
For now, you can install it directly from git, instead of  PyPI v0.1a1 version, with pip install git+https://github.com/seemethere/nba_py.git command.

Yeah, I created a pull request with it fixed and seemethere merged it in. Thanks for the github install method!

Hello, I am very new to all of this and attempting to utilize this. I am running into a similar issue and was wondering if someone could give some details on how I could fix the problem? I installed the api using the pip command and I have all of that, but I am receiving the same "requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: http://stats.nba.com/stats/playergamelog?Season=2015-16&SeasonType=Regular+Season&PlayerID=2744&LeagueID=00" error when trying any of the examples and my own. However, when I click the link in the error it takes me to a page filled with the requested stats. Any help would be much appreciated.

@siebenecka Did you install it via pip install git+https://github.com/seemethere/nba_py.git command? Could you share the code that you're using?

Oh my, I had to reinstall git and allow it to use command prompt...now it works after uninstalling the api and reinstalling with that command! Now I just need to mess around with it and get what I need, thanks for the help!

Awesome - here's my usage if anyone's interested.

Awesome usage @pawelad! I'll add it to a list of cool things made with nba_py!

Awesome library @seemethere ; - )
Thanks, I've actually been kicking the idea for some time, but seeing your library made me finally sit down and do it : )
And let me know if/when you'll need help with something nba_py related. For example I've been thinking about creating a PR with player's photo URL's, but wasn't sure if it's a bit 'beyond' NBA Stats API.

No if you have a good idea let it fly!


Really update NodeStatus every 10 seconds - not as often as possible

Before this change, Kubelet was updating the NodeStatus as often as possible - from the logs it seemed to be 5-10 times per second. This was generating a huge load.
This is part of #5953
cc  @fgrzadkowski @davidopp @dchen1107

e2e tests are passing:
Ran 33 of 39 Specs in 1130.926 seconds
SUCCESS! -- 33 Passed | 0 Failed | 1 Pending | 5 Skipped I0409 11:04:08.752936   20798 driver.go:114] All tests pass

Agh, thanks for catching that!!! I could have sworn I changed both places in that file, but obviously not.

@davidopp I think this wasn't your fault - it just never worked. Before your change the node status was supposed to be updated every 2 second and it was also updated few times per second. So I wouldn't blame your PR for it.


Implement health endpoint based on MicroProfile Health

This PR implements health endpoints according to the MicroProfile Health specification.
The new HealthServlet is capable of handling the following request paths:

/ - Will return results of all registered health checks
/live - Will return only results of registered liveness checks
/ready - Will return only results of registered readiness checks
/started - Will return only results of registered startup checks

See also: MicroProfile Health REST interface specification
Individual checks must implement the HealthCheck interface, and must be annotated with either @Liveness, @Readiness, @Startup, or a combination of the same. See Different Kinds of Health Checks.
Implementations of HealthCheck must be registered with a global HealthCheckRegistry instance, e.g.:
HealthCheckRegistry.getInstance().register("some-id", new CustomHealthCheck());

A readiness check for database connections is included in this PR.
Applications built with Alpine can add their own custom checks by following the same pattern:

Implement a HealthCheck (here: a liveness check)

package org.dependencytrack.health;

import org.eclipse.microprofile.health.HealthCheck;
import org.eclipse.microprofile.health.HealthCheckResponse;
import org.eclipse.microprofile.health.Liveness;

@Liveness
public class CustomHealthCheck implements HealthCheck {
    @Override
    public HealthCheckResponse call() {
        return HealthCheckResponse.builder()
                .name("custom-check")
                .up()
                .withData("some", "data")
                .build();
    }
}

Register desired health checks with HealthCheckRegistry, i.e. in a ServletContextListener

package org.dependencytrack.health;

import alpine.common.logging.Logger;
import alpine.server.health.HealthCheckRegistry;
import alpine.server.health.checks.DatabaseHealthCheck;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;

public class HealthCheckInitializer implements ServletContextListener {

    private static final Logger LOGGER = Logger.getLogger(HealthCheckInitializer.class);

    @Override
    public void contextInitialized(final ServletContextEvent event) {
        LOGGER.info("Registering health checks");
        HealthCheckRegistry.getInstance().register("database", new DatabaseHealthCheck());
        HealthCheckRegistry.getInstance().register("custom", new CustomHealthCheck());
    }

}

Mount HealthServlet via web.xml

<servlet>
    <servlet-name>Health</servlet-name>
    <servlet-class>alpine.server.servlets.HealthServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>Health</servlet-name>
    <url-pattern>/health/*</url-pattern>
</servlet-mapping>

Example Responses
Given the database check included in this PR, and the example custom check shown above, responses of the different endpoints would be as follows:

/

{
    "status": "UP",
    "checks": [
        {
            "name": "custom-check",
            "status": "UP",
            "data": {
                "some": "data"
            }
        },
        {
            "name": "database",
            "status": "UP",
            "data": {
                "nontx_connection_pool": "UP",
                "tx_connection_pool": "UP"
            }
        }
    ]
}

/live

{
    "status": "UP",
    "checks": [
        {
            "name": "custom-check",
            "status": "UP",
            "data": {
                "some": "data"
            }
        }
    ]
}

/ready

{
    "status": "UP",
    "checks": [
        {
            "name": "database",
            "status": "UP",
            "data": {
                "nontx_connection_pool": "UP",
                "tx_connection_pool": "UP"
            }
        }
    ]
}

/started

{
    "status": "UP",
    "checks": []
}

As per the spec, the status codes returned by those endpoints are:

200 - When all checks yield an UP response
503 - When at least one check yields a DOWN response
500 - When something failed while determining the status or executing checks

Addresses #22

Is this ready for merge?

@stevespringett Yes, ready from my side.

Changed the way health checks are registered to a global singleton registry pattern.
Service providers and ServiceLoader are a bit too unwieldy I think, and make it unnecessarily hard to test the servlet.
Updated PR description accordingly. Definitely ready to merge now.


Add static library building support

Fix #124

Thanks for tackling this @myd7349 !
Quick thought: we may want to be both static and shared libraries. Maybe create both options BUILD_SHARED and BUILD_STATIC, set to ON by default. That would require using a different name for the static target.

@SylvainCorlay Thanks for the replay.
Got it. I will update the PR.

I have added another commit to add support for building both static and shared libraries.
In order to avoid a lot of duplication code, I created a macro xeus_create_target here.

cmake -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF

will create a xeus target.

cmake -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON

will create a xeus_static target.

cmake -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON

will create both of them.
In the second case, there isn't a target named xeus, and the examples and tests will fail. I will add more commits to fix this issue.
I will test it through tomorrow.

I think I have figured out why Appveyor CI failed.
Before this commit: https://github.com/QuantStack/xeus/pull/126/commits/20787396ff43a0a722762102aab6d7baaa0a8021, BUILD_SHARED_LIBS  was set to OFF(CMake's default behavior), and googletest was built as a static library.
After this commit, BUILD_SHARED_LIBS  will be set to ON, and googletest will be built as a shared library. In this case, test_xeus.exe depends on gtest.dll and gtest_main.dll. If test_xeus.exe can not find these two dlls when running, it will exit abnormally.
I compared the CI log generated under these two cases:

There may be three ways to fix this issue:

Force to build gtest as a static library
Set BUILD_SHARED_LIBS to OFF temporarily just before building gtest, and restore its original value after: https://github.com/myd7349/xeus/pull/2/commits/01bafcb1d63183f133cd96712ce89711849e431d
I also tried to specify -DBUILD_SHARED_LIBS=OFF from the command line, but it seemed not work for me: https://github.com/myd7349/xeus/pull/2/commits/25f95ef08e272417032c3e2dde0c3bdef0d521b5

Install gtest via conda(https://github.com/myd7349/xeus/pull/2/commits/29d88a3082a58c8d8b3b5d6d50d440d20551d5c2) and specify -DDOWNLOAD_GTEST=OFF(https://github.com/myd7349/xeus/pull/2/commits/757538f1505017fe79dc36bf28ab9bd19df8e109)

Copy gtest.dll and gtest_main.dll to binary dir after building gtest: https://github.com/myd7349/xeus/pull/2/commits/c6984351d3260d1a4fbba6310a208d60e0858d86

OK. Now both Appveyor and Travis-CI are happy. :-)

Merging when all is green. We just reviewed it in-person with @JohanMabille.

@SylvainCorlay Thanks for your reply!
I have added another commit to use the same output name on Linux and macOS.
I found that gflags supports building both static and shared library at the same time. And the output lib file is gflags_static.lib for a static build on Windows.
BTW, I noticed you prefer using merge instead of rebase or squash. If you want me to squash the commits under this PR,  just tell me. :)

BTW, I noticed you prefer using merge instead of rebase or squash. If you want me to squash the commits under this PR, just tell me. :)

I think this PR deserves a few commits, so I think it is fine to not squash!

Yeah! :tada: Thanks @myd7349 for the hard work and congrats on your merged PR!

@SylvainCorlay Thank you! I am so happy. I can put this on my resume. :-)


Answers of some contributors are counted double in dashboard

Even though I just sent one request and got exactly one message in reply:

The dashboard tells me that the contributor who sent the one message actually sent a message twice? Either way it wouldn't make sense to name the contributor twice here right?

This then also affects the data in the time dashboard:

That is super weird @phoeinx and I'm not sure how to replicate it. We do have automated tests that check this and run every time a PR is put in and a commit is pushed to it. I have also personally never seen this.
I wonder if you are able to reproduce this and if you have some steps to reproduce it.

Hi, sadly there were some changes in my local db (I had to recreate a user) and I also could not reproduce this anymore.
Let's maybe put this on hold until we see it again?

Hi, sadly there were some changes in my local db (I had to recreate a user) and I also could not reproduce this anymore.
Let's maybe put this on hold until we see it again?

Hey, sorry that it's taken so long to respond. I saw this message, but forgot to respond. Yeah, I will close this and let's see if we can reproduce it first.


Events fire with ref or out may not be passed

Hey,
I was implementing a function that executes an event in which i want to have a variable set for the caller to read. I need this because i need to know which state i'm in outside of the state machine.
So if i could fire an event with a return value or with a ref/ out parameter that would be nice :)

I solved this with having context object as argument and setting member values inside the function called and reading it after the the event is fired with a getter for the set property.
I do think using out would have been a nicer solution though.

Glad that you found a solution.
I consider exposing the state the state-machine is in an anti-pattern. The reasoning is, that while the state-machine is executing a non-empty queue of events - especially an active state-machine - it is hard to say in which state the machine really is.
I normally advise using some flags on the containing class that reflect the states that you want to expose to the environment of the state-machine.


Update actor ID

Update actor ID up to 3 to fit new filecoin release.

@rllola wondering if any changes are needed on the glif wallet side to support this fix. Right now we use .createMultisig method to create the params for a multisig transaction. line of code.
Should this "just work" after an upgrade?

There is not update required on your side as far as I can tell. I just needed to update the string for the actor ID code.


model.layers returns empty list

Please make sure that this is a bug. As per our
GitHub Policy,
we only address code/doc bugs, performance issues, feature requests and
build/installation issues on GitHub. tag:bug_template
System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): Custom Code
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Ubuntu 16.04
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device: N/A
TensorFlow installed from (source or binary): binary
TensorFlow version (use command below): 2.6
Python version: 3.8.2
Bazel version (if compiling from source): N/A
GCC/Compiler version (if compiling from source): N/A
CUDA/cuDNN version: N/A
GPU model and memory: N/A

You can collect some of this information using our environment capture
script
You can also obtain the TensorFlow version with:

TF 1.0: python -c "import tensorflow as tf; print(tf.GIT_VERSION, tf.VERSION)"
TF 2.0: python -c "import tensorflow as tf; print(tf.version.GIT_VERSION, tf.version.VERSION)"

Describe the current behavior
model.layers returns an empty list []
Minimum reproducible example:
# Third Party
import numpy as np
from tensorflow.keras.layers import Concatenate, Dense
from tensorflow.python.keras.models import Model

class MyModel(Model):
    def __init__(self):
        super(MyModel, self).__init__()
        self.con = Concatenate()
        self.dense = Dense(10, activation="relu")

    def call(self, x):
        x = self.con([x, x])
        return self.dense(x)

if __name__ == "__main__":
   model = MyModel()
   print(model.layers)

When I attach a pdb and step through the code, I find that there is a change in the boolean logic here:
https://github.com/tensorflow/tensorflow/blob/002e5f47fa2ea99aa910ba83e66240c0cda8ff8a/tensorflow/python/keras/engine/base_layer.py#L2853
I suspect that is part of the breaking changes described here
Describe the expected behavior
If the model.layers API is being deprecated, what is correct API to use? If not, what is the correct class to use to create layers.

@NihalHarish ,
Please post this issue on keras-team/keras repo.
To know more refer to:
https://discuss.tensorflow.org/t/keras-project-moved-to-new-repository-in-https-github-com-keras-team-keras/1999

The issue is present only with the tf.keras APIs and not keras. APIs.
Is there a plan to support both APIs for TF 2.6.x while we transition to 2.7.x
The code snippet shared above works fine if I change the import statements to:
from keras.layers import Concatenate, Dense
from keras.models import Model

@NihalHarish ,
As mentioned above comment,all the keras related issues can be tracked in keras repo.Please feel free to post in keras repo.Thanks!


[Question] Embed

Resolved

There's an inline boolean, set that to true if you want the fields to be on the same row


Definitions conflict on run after initial install

I'm submitting a Bug Report
init according to docs crashes, citing duplicate definitions for firestore.
firelayer-debug.log and CLI firelayer info output:

  System:
    OS: macOS 10.15.7
    CPU: (4) x64 Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
  Binaries:
    Node: 15.10.0 - /usr/local/bin/node
    Yarn: 1.22.10 - /usr/local/bin/yarn
    npm: 7.11.2 - /usr/local/bin/npm
  Browsers:
    Chrome: 87.0.4280.88
    Edge: Not Found
    Firefox: 88.0.1
    Safari: 14.0.3
  npmPackages:
    @firelayer/cli: ^1.1.0 => 1.1.0
    @firelayer/core:  1.1.0
  npmGlobalPackages:
    @firelayer/cli: 1.1.0
    firelayer: Not Found

insert the content of firelayer-debug.log if relevant

insert the output from firelayer info here

Current behavior:

follow the getting started instructions, and upon running "npm run dev"
cli error output:

node_modules/@firelayer/core/node_modules/@google-cloud/firestore/types/firestore.d.ts(23,1): error TS6200: Definitions of the following identifiers conflict with those in another file: DocumentData, UpdateData, Firestore, GeoPoint, Transaction, WriteBatch, WriteResult, DocumentReference, DocumentSnapshot, QueryDocumentSnapshot, OrderByDirection, WhereFilterOp, Query, QuerySnapshot, DocumentChangeType, CollectionReference, FieldValue, FieldPath, Timestamp, v1beta1, v1, OK, CANCELLED, UNKNOWN, INVALID_ARGUMENT, DEADLINE_EXCEEDED, NOT_FOUND, ALREADY_EXISTS, PERMISSION_DENIED, RESOURCE_EXHAUSTED, FAILED_PRECONDITION, ABORTED, OUT_OF_RANGE, UNIMPLEMENTED, INTERNAL, UNAVAILABLE, DATA_LOSS, UNAUTHENTICATED, FirebaseFirestore
node_modules/@firelayer/core/node_modules/@google-cloud/firestore/types/firestore.d.ts(166,5): error TS2374: Duplicate string index signature.
node_modules/@firelayer/core/node_modules/@google-cloud/firestore/types/firestore.d.ts(1680,8): error TS2304: Cannot find name 'AsyncIterable'.
node_modules/@firelayer/core/node_modules/@google-cloud/firestore/types/v1/firestore_admin_client.d.ts(538,6): error TS2304: Cannot find name 'AsyncIterable'.
node_modules/@firelayer/core/node_modules/@google-cloud/firestore/types/v1/firestore_admin_client.d.ts(641,6): error TS2304: Cannot find name 'AsyncIterable'.
node_modules/@firelayer/core/node_modules/@google-cloud/firestore/types/v1/firestore_client.d.ts(611,6): error TS2304: Cannot find name 'AsyncIterable'.
node_modules/@firelayer/core/node_modules/@google-cloud/firestore/types/v1/firestore_client.d.ts(766,6): error TS2304: Cannot find name 'AsyncIterable'.
node_modules/@firelayer/core/node_modules/@google-cloud/firestore/types/v1/firestore_client.d.ts(859,6): error TS2304: Cannot find name 'AsyncIterable'.
node_modules/@firelayer/core/node_modules/@google-cloud/firestore/types/v1beta1/firestore_client.d.ts(616,6): error TS2304: Cannot find name 'AsyncIterable'.
node_modules/@firelayer/core/node_modules/@google-cloud/firestore/types/v1beta1/firestore_client.d.ts(775,6): error TS2304: Cannot find name 'AsyncIterable'.
node_modules/@firelayer/core/node_modules/@google-cloud/firestore/types/v1beta1/firestore_client.d.ts(872,6): error TS2304: Cannot find name 'AsyncIterable'.
node_modules/@firelayer/core/node_modules/google-gax/build/src/operationsClient.d.ts(246,111): error TS2304: Cannot find name 'AsyncIterable'.
node_modules/@firelayer/core/node_modules/google-gax/build/src/paginationCalls/pageDescriptor.d.ts(41,83): error TS2304: Cannot find name 'AsyncIterable'.
node_modules/@firelayer/core/node_modules/google-gax/build/src/paginationCalls/pageDescriptor.d.ts(42,84): error TS2304: Cannot find name 'AsyncIterable'.
node_modules/@google-cloud/firestore/types/firestore.d.ts(23,1): error TS6200: Definitions of the following identifiers conflict with those in another file: DocumentData, UpdateData, Firestore, GeoPoint, Transaction, WriteBatch, WriteResult, DocumentReference, DocumentSnapshot, QueryDocumentSnapshot, OrderByDirection, WhereFilterOp, Query, QuerySnapshot, DocumentChangeType, CollectionReference, FieldValue, FieldPath, Timestamp, v1beta1, v1, OK, CANCELLED, UNKNOWN, INVALID_ARGUMENT, DEADLINE_EXCEEDED, NOT_FOUND, ALREADY_EXISTS, PERMISSION_DENIED, RESOURCE_EXHAUSTED, FAILED_PRECONDITION, ABORTED, OUT_OF_RANGE, UNIMPLEMENTED, INTERNAL, UNAVAILABLE, DATA_LOSS, UNAUTHENTICATED, FirebaseFirestore
node_modules/firebase-functions/lib/providers/https.d.ts(109,25): error TS2694: Namespace 'admin' has no exported member 'appCheck'.

Expected behavior:

runs
Steps to reproduce:

install according docs, and run "npm run dev"
Other information:

@consciousweb Firebase dependencies updated and locked for all templates 247fa647c99783f8f51ddcc0d70961d88fc73cb7.
Let me know if it's still happening with the new release v1.1.1


Uncaught TypeError: Right-hand side of 'instanceof' is not callable

[Enter steps to reproduce:]

...
...

Atom: 1.28.2 x64
Electron: 2.0.5
OS: Mac OS X 10.11.6
Thrown From: markdown-scroll-sync package 2.1.2
Stack Trace
Uncaught TypeError: Right-hand side of 'instanceof' is not callable
At /Users/navy/.atom/packages/markdown-scroll-sync/lib/main.coffee:38

TypeError: Right-hand side of 'instanceof' is not callable
    at /packages/markdown-scroll-sync/lib/main.coffee:38:14
    at Function.module.exports.Emitter.simpleDispatch (/Applications/Atom.app/Contents/Resources/app/node_modules/event-kit/lib/emitter.js:27:20)
    at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app/node_modules/event-kit/lib/emitter.js:156:34)
    at Workspace.didActivatePaneContainer (/Applications/Atom.app/Contents/Resources/app/src/workspace.js:430:26)
    at WorkspaceCenter.paneContainer.onDidActivatePane (/Applications/Atom.app/Contents/Resources/app/src/workspace-center.js:12:59)
    at Function.module.exports.Emitter.simpleDispatch (/Applications/Atom.app/Contents/Resources/app/node_modules/event-kit/lib/emitter.js:27:20)
    at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app/node_modules/event-kit/lib/emitter.js:156:34)
    at PaneContainer.didActivatePane (/Applications/Atom.app/Contents/Resources/app/src/pane-container.js:265:24)
    at Pane.activate (/Applications/Atom.app/Contents/Resources/app/src/pane.js:1018:46)
    at Pane.focus (/Applications/Atom.app/Contents/Resources/app/src/pane.js:401:23)
    at HTMLElement.handleFocus (/app.asar/src/pane-element.js:41:20)

Commands

Non-Core Packages
activate-power-mode 2.7.0
markdown-preview-plus 3.3.3
markdown-scroll-sync 2.1.2
mathjax-wrapper 0.1.0

Has been resolved, please check: https://github.com/vincentcn/markdown-scroll-sync/issues/560


has one through?

Model Quotes
Model Blocks
Quote optionally belongs_to Block through BlockQuote Model (has_one through)
Is it possible to do?

Unfortunately not. Though this PR was merged into dev, but that branch is no longer active.
You can achieve this through hasManyThrough, though, it is somewhat cumbersome particularly if your API doesn't abide with the expected format of the relation. In which case you'll want to reshape your API response.


Is it necessary to encapsulate  vim.diagnostic.config in saga？

This is an open topic. Is it necessary to encapsulate vim.diagnostic.config in saga. Will any configuration about diagnostic be easy? I see that many plugins support configuring sign and virtualtext. It's weird. Is vim.diagnostic.config unfriendly to newbies?

In my mind, if there's already a builtin way of defining a configuration option in nvim, then it seems reasonable to expect that option to at least be the fallback value for related plugins. In the larger ecosystem, this would ensure consistency and limited configuration overhead when using multiple plugins which are complementary in functionality or when migrating between plugins. I can see the potential need for one specific plugin to act differently, but I feel like this is probably an edge case.
I personally wasn't even aware of vim.diagnostic.config for quite a while. I feel like that was because every plugin has their own unique configuration scheme, causing the builtin config to rarely be mentioned in a way that newbies could even know about it, but that could just be my experience.
So I guess, for my two cents, I wouldn't say it's absolutely necessary but I think the whole nvim plugin community would benefit greatly from unifying around common practices already builtin.

right. so closed.


Can the spacing between nodes and lines be increased a little?

Can the spacing between nodes and lines be increased a little?

Usually I would just add padding to the size of nodes I request (but still draw them the same size).


Bird icon to X icon

Could you please assign this to me?

Hi, I'd like to work on this issue. Please assign it to me.

Plz assign me this issue

This issue was assigned earlier, so i am closing this issue


fix formatting of alert data model

http://fiware-datamodels.readthedocs.io/en/latest/Alert/doc/spec/index.html
is totally broken when it comes to bullet points.
Please fix it
@chicco785

closed


Mention wrong  File in Step 6

Hi,
Step 6 of this code lab referenced lib/home_page.dart to apply the changes. This File does not exist. I checked the complete source tree and here the changes gets applied to lib/home_route.dart
Looks like  the wrong file is mention the the Text.

Thanks for the report! Just updated the content that fixes this issue: https://codelabs.developers.google.com/codelabs/admob-ads-in-flutter#5


Enable str to string clippy options

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

334 of 338 (98.82%)  changed or added relevant lines in 52 files are covered.
9 unchanged lines in 4 files lost coverage.
Overall coverage decreased (-0.009%) to 98.284%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

core/src/ast/mod.rs
26
27
96.3%

core/src/ast/query.rs
41
42
97.62%

core/src/executor/evaluate/stateless.rs
36
38
94.74%

Files with Coverage Reduction
New Missed Lines
%

storages/sled-storage/src/lib.rs
1
98.75%

test-suite/src/tester/mod.rs
1
87.5%

storages/memory-storage/src/lib.rs
3
96.94%

storages/shared-memory-storage/src/lib.rs
4
89.86%

Totals

Change from base Build<PHONE_NUMBER>:
-0.009%

Covered Lines:
38140

Relevant Lines:
38806

💛  - Coveralls


Only collect outermost intra expression inference sites

It's a potential perf improvement. However, I don't expect this to yield significant gains in the automated tests - this can probably only show in more pathological cases with big objects used as arguments. It happens that in XState we deal with such so maybe I would be able to gather some more concrete data based on that.
At the moment, in a case like this:
declare function fn<T>(args: {
  foo: {
    bar: {
      baz: {
        producer: (arg: unknown) => T;
      };
    };
  };
  consumer: (val: T) => unknown;
}): T;

fn({
  foo: { // 4
    bar: { // 3
      baz: { // 2
        producer: (arg) => 1, // 1 (function itself)
      },
    },
  },
  consumer: (val) => {},
});

we collect four intra expression inference sites. The innermost function (site 1) "taints" all the objects containing it (minus the root one). This is because isContextSensitive is recursive.
This means that isContextSensitive has to be computed at all of those levels and that we end up inferring from all of those levels separately within inferFromIntraExpressionSites. Most of that work is more than duplicated here since the outermost expression contains all of the information that can be found in the expressions contained in it.

The perf machine is currently offline but I'll run that once it's back again and caught up. If you can show a diff before/after in your xstate case that'd be helpful!
@typescript-bot test this
@typescript-bot test top100
@typescript-bot user test this
@typescript-bot run dt
@typescript-bot pack this

@typescript-bot perf test this faster

@typescript-bot perf test this faster

I see that for some reason main is failing after merging this -> I'm investigating this.

Probably just that the branch was out of date when it was merged.

Ye, right - I narrowed it down to a silent conflict with: https://github.com/microsoft/TypeScript/pull/54380 , looking now if I can make it work in a reasonable time.


Dockstore docs is serving image ads

Describe the issue
Image based ads are on the bottom of our pages now. This is especially awkward on pages where we have a list of collaborators' logos.
To reproduce
Seems to be on all pages on docs.dockstore.org, just scroll down on any page with an adblocker turned off. Above screenshot is from the homepage. Also shows up on search results.
Wished-for behavior
Paradigm shift to an advertising-free model of the Internet, preventing this sort of thing from happening.
Expected behavior
Not having ads on docs.dockstore.org, some way or another. We may want to see this as an opportunity to move away from readthedocs, which seems to have some serious issues with the usefulness of its search (https://github.com/dockstore/dockstore/issues/3613) and a few odd UI quirks (https://github.com/dockstore/dockstore/issues/4312), but we could stick with them if we are willing to pay extra for an ad-free experience. Thankfully it appears the Gold Plan to do this would be relatively affordable.
Background
It appears that readthedocs started out with text-only ads. I'm not sure when it started serving image-based ads; I only noticed today. It is possible it has been a while and we simply did not notice; I would not be surprised if most of us have adblockers installed.
Screenshots
On our homepage, a quick glance might imply whoever is being advertised is affiliated with us.

They all seem to use a gray border to help them stand out. This is from a search:

Desktop (please complete the following information):

MacOS Catalina via Google Chrome, no adblocker (I have nothing against them, I just forgot to install one)

┆Issue is synchronized with this Jira Story
┆Issue Number: DOCK-1866
┆Sprint: Backlog
┆Issue Type: Story

https://readthedocs.org/sustainability/

They are now being served on the right hand side of the screen. If the user has a large window then it is very clear that they are not affiliated with the docs. May want to investigate what happens on a smaller window...

This shows up when viewed in the readthedocs build and not on the current docs.docsktore.org. It will be interesting to see if this new design carries over when we push a new update to docs.dockstore.org.

I checked docs.dockstore.org now that 1.12 is out and it looks like the ads are still just on the bottom. So far, nothing appearing on the left.

It would be good to know what happens to the ads when viewed on a mobile device, and how the on-the-left ads (if they ever do show up on docs.dockstore.org) behave when the screen width is smaller than the 1300px readthedocs allocates for the docs' content.


Adds MATERIALX_BUILD_IOS option that enables it to be compiled on iOS

Thanks to @ikuznetcova for the contribution

@Morteeza This proposal looks good to me, and let me know what your thoughts are on the error we're seeing in GitHub Actions.

It's trying to build for iOS, but can we build for iOS in github CI?
/Applications/Xcode_14.3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.4.sdk/usr/include/sys/cdefs.h:901:2#error Unsupported architecture: error: Unsupported architecture

 ^
#error Unsupported architecture
 ^

Ah nice, looking good!


@conda-forge-admin, please add user @jacobfilik

[ ] I read the conda-forge documentation and could not find the solution for my problem there.

Issue:

Environment (conda list):

$ conda list

Details about  conda and system ( conda info ):

$ conda info

Hi! This is the friendly automated conda-forge-webservice.
I tried to added user @jacobfilik as requested, but the recipe already has maintainer @jacobfilik so no changes were made.


concurency issue (Collection was modified; enumeration operation may not execute)

i experience following error: System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
bei System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource)
bei System.Collections.Generic.List1.Enumerator.MoveNextRare()    bei System.Collections.Generic.List1.Enumerator.MoveNext()
bei Fluent_CQRS.AggregateLifeCycle1.StoreChanges(ExecutionResult executionResult)    bei Fluent_CQRS.AggregateLifeCycle1.TryStoreChanges(ExecutionResult executionResult)
I guess this is caused by multiple threads working with the same aggregate.
I am not sure, if this would be the responsibility of the framework to handle concurrency issues or the caller. I guess you could make arguments for both sides.

Hi @dBug404, thanks for your message.
Is it possible for you to describe how to get this error, so it is more understandable for me?
THX

I've changed my code that only one thread can work at one aggregate at a time, but the problems still persisted.
After some debugging i took a look at the fluent-cqrs code and found out, that in the class AggregateLifeCycle the field _aggregate was static. So this could have never worked in a concurrent environment. Removing the static seems to work, but i just found it out, but the test i wrote to replicate the issue seems to work now.


can not  dowload?

hi，nice wrok ! but the data can not be downloaded.

this dataset/
laion2b-en-vit-h-14-embeddings became disabled，any other soultion to get your deduplicated laion-2b-en data?
look forward to your reply，3ks!

+1

as sri-hk said, LAION is no longer distributing laion2b and its variants. So, as I only provided a filtering of that data it won't be available anymore. I'll remove that code soon and maybe add functionality to deduplicate your own dataset / another dataset.

@ppwwyyxx I can not, as the dataset is facing ethical issues, and don't plan to. For now, I'd suggest to check out DataComp-1B, and perhaps I'll plan to deduplicate that dataset.

as sri-hk said, LAION is no longer distributing laion2b and its variants. So, as I only provided a filtering of that data it won't be available anymore. I'll remove that code soon and maybe add functionality to deduplicate your own dataset / another dataset.

Thank you for your reply.
I find another way to deduplicate. So far so good. Phash is highly efficient and also fast, but you may need many cpus and memories.


feat(dotenv-loader): add key transformer option

Add option to transform environment variable keys before parsing them. This allows changes to be made prior to parsing which makes having to use complex normalize functions obsolete.
PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows our guidelines: https://github.com/Nikaple/nest-typed-config/blob/main/CONTRIBUTING.md
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Related issue linked using fixes #number
[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Other... Please describe:

What is the current behavior?
Currently environment variables that are loaded using the dotenv-loader cannot be reformatted. These variables are by convention capitalized which results in a config that looks like this:
.envfile:
DATABASE__HOST=localhost
DATABASE__PORT=4000

config:
config: {
    DATABASE: {
        HOST: 'localhost',
        PORT: 4000,
    },
}

(The config can be changed after the dotenv-loader by using the normalizefunction of the TypedConfigModule, more about this below.)
Issue Number: N/A
What is the new behavior?
The new behavior allows users to pass a function to the new keyTransformer option. This function can modify the environment variable keys in any way the user wants. The function should take one argument and return a string.
An example with a simple function that uses toLowerCase():
.envfile:
DATABASE__HOST=localhost
DATABASE__PORT=4000

TypedConfigModule.forRoot({
    schema: Config,
    load: dotenvLoader({
        separator: '__',
        ignoreEnvFile: false,
        keyTransformer: key => key.toLowerCase()
    }),
}),

config:
config: {
    database: {
        host: 'localhost',
        port: 4000,
    },
}

Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information
I know that the simple example with toLowerCase() can easily be achieved by using the normalize function of the TypedConfigModule, however this can become quite difficult (traversing the object recursively) and long. To obtain the same result the following configuration can be used:
TypedConfigModule.forRoot({
    schema: Config,
    load: dotenvLoader({
        separator: '__',
        ignoreEnvFile: false,
    }),
    normalize: function transform(config) {
        return Object.entries(config)
            .reduce<Record<string, any>>((acc, [key, value]) => {
                if (Object.getPrototypeOf(value) === Object.prototype) {
                    acc[key.toLowerCase()] = transform(value);
                } else {
                    acc[key.toLowerCase()] = value;
                }
                return acc;
            }, {});
    },
}),

Like I mentioned earlier, this can become quite complex.
An added benefit of this change is the option to use dotenv-loaderseparately and still be able to reformat the keys. This allows the user to use the same classes and validation without requiring the app to be started (e.g. when using the CLI).

This feature seems fine and has a reasonable use case. Please update the feature in the corresponding part of README.md as well :)


v0.11

Codecov Report

Merging #265 (84b5af4) into main (550bba4) will decrease coverage by 2.54%.
The diff coverage is 93.44%.

@@            Coverage Diff             @@
##             main     #265      +/-   ##
==========================================
- Coverage   96.05%   93.51%   -2.54%
==========================================
  Files          46       46
  Lines        8380     4655    -3725
==========================================
- Hits         8049     4353    -3696
+ Misses        331      302      -29

Impacted Files
Coverage Δ

...gic/transaction/objects/internal_deploy_account.rs
96.95% <ø> (-0.58%)
:arrow_down:

src/core/syscalls/syscall_handler.rs
88.55% <ø> (-7.65%)
:arrow_down:

src/core/syscalls/syscall_response.rs
87.00% <ø> (-1.08%)
:arrow_down:

src/testing/starknet_state.rs
100.00% <ø> (+0.18%)
:arrow_up:

src/utils.rs
92.18% <ø> (-2.99%)
:arrow_down:

...rc/core/syscalls/business_logic_syscall_handler.rs
85.05% <75.00%> (-1.76%)
:arrow_down:

...core/contract_address/starknet_contract_address.rs
96.12% <90.90%> (-1.91%)
:arrow_down:

.../business_logic/execution/execution_entry_point.rs
95.83% <100.00%> (+0.02%)
:arrow_up:

...ness_logic/transaction/objects/internal_declare.rs
98.98% <100.00%> (+0.27%)
:arrow_up:

...iness_logic/transaction/objects/internal_deploy.rs
99.33% <100.00%> (+0.42%)
:arrow_up:

... and 3 more

... and 11 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

Done here
https://github.com/lambdaclass/starknet_in_rust/pull/498


Smarter object type name generation

The way that we name new GraphQL Object Types (GOTs) right now is highly varied. All our names are generated from the OAS. Sometimes the name is part of a reference, sometimes it is the name provided by the schema, and sometimes it is a combination of the path and the method. We choose based on the information we have on hand but otherwise, the processes are simple. Because of the different ways we use to generate names, our names lack uniformity. A greater problem is that sometimes, we will end up with long and ugly names.
If we can use smarter methods to create names, hopefully we can create a nicer interface.
Some ideas include: analyzing descriptions for keywords, comparing field names with similar field names in other OASs, and improving the simple parsing that we do already (e.g. getUsers -> users).

@tbrannam Thanks for the input! We specifically decided against using operationIds (for queries) as this route often leads to non-idiomatic GraphQL interfaces, where fields would be called getUser rather than user.
Decoupling is still possible currently with OASGraph: you can simply rename the JSON schema definition, if it is referenced in the OAS, and OASGraph will reflect the schema's name.


Cache: Allow writing to existing caches

Task name: Cache
Description: Added immutable input
Documentation changes required:  Y
Added unit tests: N
Attached related issue:
Checklist:

[x] Task version was bumped - please check instruction how to do it
[ ] Checked that applied changes work as expected

I've been needing this for a long time, really since the Cache task was still in beta. I've been looking through the issues and the docs, and I've concluded that this kind of functionality really needs to be here, in a dedicated form.
The docs compare and contrast Artifacts with Caching, saying Artifacts are for necessary outputs from one stage/pipeline to another, and Caching is for dependencies which might be acquirable elsewhere. It seems to me there is a third type, and that is actual file caching of compiled output.
In looking around, I saw this comment which mentions a "rolling" cache idea, but the poster seems to be out-thinking themselves with regards to the keys. Most build systems (e.g. make, msbuild, etc) already check for outdated output and do incremental recompiling. I see no need for any kind of commit sha checking. Simply allow users to save the data, and let the build systems handl the rest.
I also saw an aside about security concerns. I can't really imagine how or why that's an issue, but at least by adding an input that is defaulted to read-only, there shouldn't be any worries about issues popping up for various pipelines.
Let me do my best to emphasize that this is desperately needed. Build times are absurd without caching. I wish msbuild had a more robust solution than what it has now, but we can't even use that without a mutable cache. The fallback key system is too clumsy, and it can lead to odd behavior (if we write to a specific key, and read from a general key, then we have to import all previous caches. If those caches have the same files, which files wind up being used?).
Please give this PR some consideration, I would really appreciate it.
p.s. I was unable to build either side of this, so it isn't tested. If it is wildly wrong, I will gladly work to get it right.
Cross PR: https://github.com/microsoft/azure-pipelines-agent/pull/3090

Ping


Support using a TOML "dotfile" config file in the user's homedir

Adding this feature for lab 4

Closed with #9


Spell Checker with .NET

Project name
DictionaryProjectMSHackTogether
Description
Using a dictionary to create a spell checker and autocomplete.
Repo URL
https://github.com/Muhammad-Hassaan-Farooq/DictionaryProjectMSHackTogether
Team members
Muhammad-Hassaan-Farooq,ShahzaibShoaib,Sickfires94

Thank you for your submission @Muhammad-Hassaan-Farooq. It seems that your hack is not using Microsoft Graph, which is why we can't accept it to be eligible for prizes.


dynamic-rest incompatible with latest drf >=3.12.x (with fix for security vulnerability)

Hi,
Our application has the requirements on - djangorestframework and dynamic-rest.
djangorestframework >= 3.11.2 has a security fix as per the release notes
dynamic-rest has a dependency on djangorestframework but only supports version <= 3.10
Now if we downgrade our drf, our security checks fail due to the security vulnerability
and if we upgrade our drf to get around the security issue, dynamic-rest fails at runtime.
We have effectively reached dependency-hell.
Can the team please look into supporting drf >= 3.12
Thanks!

resolved in latest release


docs: add explanation on left and right join

Add an explanation on how to use left and right join
Motivation:
There is no explanation that how to use left and right join on README.md.
Modifications:
README.md
Commit Convention Rule

Please commit your modification based by conventional commit
This commit convention is referred from angular convention

Commit type
Description

feat
New Feature

fix
Fix bug

docs
Documenation only changed

ci
Change CI configuration

refactor
Not a bug fix or add feature, just refactoring code

test
Add Test case or fix wrong test case

style
Only change the code style(ex. white-space, formatting)

If you want to add some more commit type please describe it on the Pull Request

Result:
Closes #. (If this resolves the issue.)

Describe the consequences that a user will face after this PR is merged.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


New function to allow easy paralelization over vmap()

Please:

[CHECKED] Check for duplicate requests.
[x] Describe your goal, and if possible provide a code snippet with a motivating example.

Hello Jax team,
I have a simple request:
I've read about all the padding and even shape_poly, but I have the following issue: I have jnp.ndarrays of shape like this: [(50, 6, 6), (100, 6, 6), (1000, 6, 6), (1,6,6)]. Array shape will be known at compile time and will remain consistently the same, but each individual array will have different ndarray.
For each array, the function is already vmapped. I understand I could:
vmapped_func = vmap(func_to_compute)
scan(vmapped_func, (), [(50, 6, 6), (100, 6, 6), (1000, 6, 6), (1,6,6)])

Which works, but it requires sequential execution.
Jax could have a simple function to parallelize inputs of lists, kind of like #paralel_for in C++ MPI.
Why not? It's something that would speed up compute for "jagged" arrays.
P.S. I see now that I could actually concatenate and then slice the arrays to enable paralel execution, but nevertheless - why do it manually?

What's the disadvantage of concatenation? In general, jax doesn't support much in terms of operating things like vmap over non array datatypes (generally prioritizing SoA over AoS).

What's the disadvantage of concatenation? In general, jax doesn't support much in terms of operating things like vmap over non array datatypes (generally prioritizing SoA over AoS).

updated the last words to "Why do it manually"?
Because... why do it manually? it's a util function everybody can use, so that, in the future, hundreds or thousands of devs like me don't have to google jax ragged array, and inevitably hitting a wall.
Basically...
positions=cumsum(map(lambda array: array.shape[0]))
concatted_array=jnp.concat(array for array in arrays])
results=vmap(func)(concatted_array)
slice(results, positions) # I don't know which func does that.

This would literally save hours for anybody who is looking how to solve this problem. I was looking for this for 3(!) months, and only now an coming with solution,

Adding one function to consume python lists (or sequences), would be a major break from the design of the API so far. Especially considering concatenating arrays is a pretty core subroutine that is standard practice for working with vmap. It seems like such utility functions might belong better in a third party repo (e.g. in one of the deepmind ecosystem like chex, or equinox, or one of the many pytree utility packages) rather than in jax core.

(xref: https://stackoverflow.com/questions/79123001/storing-and-jax-vmap-over-pytrees)
I think we probably won't add anything like the proposed API. A core philosophy of JAX is to keep the API surface small, and achieve functionality through composition. Here, as you showed, you can achieve the desired functionality in a few lines by composing concatenate and vmap. That seems like a very good solution to the problem – what do you think?


Add support for Ruby Sorbet RBI typedef generation

This PR adds support for generating RBI type definition files for the Ruby Sorbet typing system. This is very similar in concept to the .d.ts definition files generated for TypeScript code, but for Ruby.
RBI generation is performed using the protoc plugin developed by Coinbase: https://github.com/coinbase/protoc-gen-rbi

@aldelucca1 @ido-namely it looks like you have been most active on this repo recently, are you the maintainers?
Apologies if I'm pinging the wrong people - just wanted to check if there's anything I should do to get this PR ready for review based on your workflow.

@ido-namely thanks a lot, the version has been bumped!

Thanks @ido-namely!