Revise project pages to display current / past, new page for staff projects

Revises project list view to display current and past projects in separate sections. Adds a new project list view for staff and postdoc projects (also grouped by current and past).
Also fixes #98

Codecov Report

Merging #117 into develop will increase coverage by 0.08%.
The diff coverage is 99.29%.

@@             Coverage Diff             @@
##           develop     #117      +/-   ##
===========================================
+ Coverage    96.54%   96.62%   +0.08%
===========================================
  Files           65       67       +2
  Lines         2458     2551      +93
===========================================
+ Hits          2373     2465      +92
- Misses          85       86       +1

Impacted Files
Coverage Δ

cdhweb/projects/urls.py
100% <ø> (ø)
:arrow_up:

cdhweb/projects/models.py
100% <100%> (ø)
:arrow_up:

cdhweb/projects/tests.py
100% <100%> (ø)
:arrow_up:

cdhweb/blog/models.py
95.23% <100%> (-0.77%)
:arrow_down:

cdhweb/events/models.py
98.95% <100%> (-0.09%)
:arrow_down:

cdhweb/projects/views.py
100% <100%> (ø)
:arrow_up:

cdhweb/people/models.py
96% <100%> (-0.13%)
:arrow_down:

...ts/migrations/0005_make_grant_end_date_optional.py
100% <100%> (ø)

...eb/projects/migrations/0006_staff_rd_grant_type.py
100% <100%> (ø)

cdhweb/resources/models.py
96% <85.71%> (-1.73%)
:arrow_down:

... and 2 more

Continue to review full report at Codecov.

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


Using RLS with workspaces in Power BI - for Direct Access and Sharing Links

The section "Using RLS with workspaces in Power BI" needs to be expanded or cloned to cover the scenario where the report is shared as a Link or via Direct Access. It seems from my testing that "Read" access in that scenario is equivalent to the "Viewer" access described in that section? "Write" is equivalent to "Member"?

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: d5505062-94f3-e15d-a52f-ce1ac7f8cb69
Version Independent ID: 34076b73-0ded-2111-ed44-2a31e07deb53
Content: Row-level security (RLS) with Power BI - Power BI
Content Source: powerbi-docs/enterprise/service-admin-rls.md
Service: powerbi
Sub-service: powerbi-admin
GitHub Login: @paulinbar
Microsoft Alias: painbar

Thanks for your comment, @Mike-Honey. This issue has been assigned to the doc author for review.

Hi @Mike-Honey,
Thanks for your comment. I believe what you suggest is be true - that RLS will be applied in the case of a user who does not have a role in the workspace but who has been given read permissions explicitly - either via a link or direct access. This table https://learn.microsoft.com/en-us/power-bi/connect-data/service-datasets-permissions#permissions-acquired-implicitly-via-workspace-role shows the actual dataset permissions that are granted per workspace role. I think that what RLS really looks for is the "read" permission, rather than the "Viewer" role. I will confirm this with the product team and add to the article if necessary, as you suggest. In the meantime I am creating a work item to follow this and closing this issue. Feel free to reopen if you feel the need. Thanks!


chore: move reset button functionality to input field

Description
Refactor to remove reset button functionality from the FieldWrapper to the InputFieldWrapper

PR commands

List of available commands:

@toptal-bot run all - Run whole pipeline
@toptal-bot run build - Check build
@toptal-bot run visual - Run visual tests
@toptal-bot run deploy:documentation - Deploy documentation
@toptal-bot run package:alpha-release - Release alpha version

PR Review Guidelines

When to approve? ✅
You are OK with merging this PR and

You have no extra requests.
You have optional requests.

Add nit: to your comment. (ex. nit: I'd rename this variable from makeCircle to getCircle)

When to request changes? ❌
You are not OK with merging this PR because

Something is broken after the changes.
Acceptance criteria is not reached.
Code is dirty.

When to comment (neither ✅ nor ❌)
You want your comments to be addressed before merging this PR in cases like:

There are leftovers like unnecessary logs, comments, etc.
You have an opinionated comment regarding the code that requires a discussion.
You have questions.

How to handle the comments?

An owner of a comment is the only one who can resolve it.
An owner of a comment must resolve it when it's addressed.
A PR owner must reply with ✅ when a comment is addressed.

Also, seems, we have a DatePicker that supports onResetClick, but the Form's version of DatePicker is not based on InputFieldWrapper, but on FieldWrapper

Also, seems, we have a DatePicker that supports onResetClick, but the Form's version of DatePicker is not based on InputFieldWrapper, but on FieldWrapper
163d560/packages/picasso/src/DatePicker/story/WithResetButton.example.tsx

It is still in progress. I'm working on that PR


[Rendering] Motion Vectors arent reliable

Looks to be related to object scale

Appears to have been fixed at some point?


RtmpClient.read returns -1 rather than throwing when no connection

Reproduction steps:

Start reading an RTMP live stream, by opening a connection and then repeatedly calling RtmpClient.read, as normal. @jinfanzon can provide you with such a stream via email.
Toggle airplane mode on, then off again whilst reading.
Observe the current RtmpClient.read call ends up returning -1, which is documented to mean that the stream is complete.

It looks to me like returning -1 in this case is incorrect. In ExoPlayer, it causes us to assume the stream has ended and transition the player to its ended state. The RtmpClient.read call should either throw an exception (in which case the player will retry) or read some valid data (if possible, depending on when the method returns relative to when airplane mode is toggled off again). Please could you take a look?

Hi,
Throwing an exception indicating connection with the server is dropped may help you for this issue?

Yes, if RtmpClient.read were to throw an appropriate exception rather than returning -1 in this case, that would help.

Hi @mekya - could you please provide me an email adress to send the stream url I'm using.


refactor(react): optimize use connectors in use disconnect hook

Description

Optimize the way to obtain connectors in useDisconnect

The reason useConnections is used to get the connectors is so connectors only includes connected connectors since calling disconnect on unconnected connectors does not work.


Invalid amount error on withdraw / withdraw command is not working

The withdraw command php bin/bitcoin-dca withdraw ada --all -y
returns the following error
In KrakenClient.php line 77:

  EFunding:Invalid amount

Thanks for the fix https://github.com/bufo24


Support OpenID Connect for Verifiable Presentations (SIOP)

Wallet should support OpenID Connect for Verifiable Presentations spec. The spec uses DIF Presentation Exchange specification, which is already supported by TrustBloc wallet. As part of the implementation, the PEx should be wrapped in OIDC SIOP request/response.
Tasks:

[ ] Add Authentication request endpoint in wallet-web

Extract PEx from claims query param
Run a search through existing VCs in Wallet
Show preview/consent screen

[ ] Construct Authentication Response (including vp_token)
[ ] Automation tests

Reference for how to perform presentation definition query in wallet: https://github.com/trustbloc/agent-sdk/blob/51b612b6a37ab5b44824078b00420d7cd6e3c737/cmd/wallet-js-sdk/test/specs/credential/credential-manager.spec.js#L455-L472


Historical model with "excluded_fields" causes DoesNotExist error when trying to get instance from historical record if object is deleted

Describe the bug
Historical model with "excluded_fields" causes DoesNotExist error when trying to get instance from historical record if object is deleted
To Reproduce
Steps to reproduce the behavior:

Create model as follows

class ExampleModelWithExcludedField(models.Model):
    history = HistoricalRecords(excluded_fields=['description'])
    name = models.CharField(max_length=255)
    description = models.TextField()
    date = models.DateTimeField(auto_now_add=True)

Run ./manage.py shell

>>> obj = ExampleModelWithExcludedField.objects.create(name='name', description='desc')
>>> obj_id = obj.id
>>> obj.delete()
(1, {'simple_app.ExampleModelWithExcludedField': 1})
>>> hist_obj = HistoricalExampleModelWithExcludedField.objects.filter(id=obj_id).first()
>>> hist_obj.instance
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File ".../simple_history/models.py", line 383, in get_instance
    .values(*excluded_attnames)
  File ".../django/db/models/query.py", line 379, in get
    "%s matching query does not exist." %
simple_app.models.DoesNotExist: ExampleModelWithExcludedField matching query does not exist.

Expected behavior
I expected to get instance with default values for fields that excluded.
Environment:

OS: Ubuntu 18.04, Arch linux
Django Simple History Version: 2.7.2
Django Version: 1.11.22
Database Version: Sqlite3, PostgreSQL 11.4

My repo for reproduce this error

Clone the repo - https://github.com/yakimka/example-simple-history-project.git

Database is already present.

Install requirements
Run python manage.py shell
Run:

>>> from simple_app.models import HistoricalExampleModelWithExcludedField
>>> obj_with_excluded_fields = HistoricalExampleModelWithExcludedField.objects.filter(id=1).first()
>>> obj_with_excluded_fields.instance

See error

Have the same issue
Django 2.2.3
Django Simple History Version: 2.7.2

This is expected behavior and can be found in this line: https://github.com/treyhunner/django-simple-history/blob/master/simple_history/models.py#L376
Essentially, the instance call returns a base model instance of the historical model with the fields from the historical model. However, what do we do if there are excluded fields on the historical model? The decision we made was to populate those missing fields with the most current fields on the base model object. If the base model object is deleted, how would we populate those fields?

But because of this, the next_record/prev_record doesn't work either.
>>> from simple_app.models import HistoricalExampleModelWithExcludedField

>>> obj_with_excluded_fields = HistoricalExampleModelWithExcludedField.objects.filter(id=1).first()

>>> obj_with_excluded_fields.prev_record
---------------------------------------------------------------------------
DoesNotExist                              Traceback (most recent call last)

...

DoesNotExist: ExampleModelWithExcludedField matching query does not exist.

I propose to return the default value if the object is deleted.
Something like this:
def get_instance(self):
    attrs = {
        field.attname: getattr(self, field.attname) for field in fields.values()
    }
    if self._history_excluded_fields:
        excluded_attnames_with_defaults = {
            model._meta.get_field(field).attname: model._meta.get_field(field).get_default()
            for field in self._history_excluded_fields
        }
        try:
            values = (
                model.objects.filter(pk=getattr(self, model._meta.pk.attname))
                    .values(*excluded_attnames_with_defaults.keys())
                    .get()
            )
        except ObjectDoesNotExist:
            values = excluded_attnames_with_defaults
        attrs.update(values)
    return model(**attrs)

Reopening this because @yakimka convinced me

@rossmechanic I seem to be getting this issue after adding a related_name to a history field on an existing dataset.


Permission denied error message

I am getting the following error message from the handbrake container logs:
[services.d] starting s6-fdholderd...
s6-applyuidgid: fatal: unable to exec s6-fdholderd: Permission denied
It seems to be related to the fact I am running traefik as a reverse proxy, as I have a second server that I have run a test install on and it doesn't get the error message and doesn't have a reverse proxy configured, when i type server-ip:5800 of the server I'm trying to get this container to run on I get a 403 nginx error, but when I run the server-ip:5800 of the non reverse proxy server it loads the handbrake web GUI as desired.
You mention in the readme that nginx configuration can be modified to allow for reverse proxy, can you confirm the location of the nginx config in the docker and would I be right in thinking this would allow traefik to reverse proxy without nginx getting involved

It seems to be related to the fact I am running traefik as a reverse proxy

I don't think the permission denied error is related to the reverse proxy.  A reverse proxy is a separate entity that runs in front of the container and it is transparent to it.  Does this HandBrake instance continue to run normally or it shutdown itself?

You mention in the readme that nginx configuration can be modified to allow for reverse proxy, can you confirm the location of the nginx config in the docker and would I be right in thinking this would allow traefik to reverse proxy without nginx getting involved

The configuration examples I give in the README are for an nginx instance running as a reverse proxy.  They are not for the container itsef.  nginx I a very popular HTTP server used as a reverse proxy.  For traefik, you need a different configuration.

Thanks for the reply, I managed to resolve the issue. I got it working by completely removing docker, upgrading to the latest image of the version of Ubuntu I was running and starting from scratch. It took a couple of days and slot of head scratching but I got there. Thanks for the awesome docker image, keep up the good work

Great, happy to know that it's now working!


Auto Move and Pick Up Command

move forward until photonvision detects a game piece
move to the nearest game piece
pick up the game piece
turn 180 degrees*
move forward ~7 ft

covered in diff issue


Today the Author‘s social params in sidebar disappeared！

It seems like something went wrong...
The demo https://www.joshuahu.io/ also happened.

Well, it's the Adblock's fault. Sorry.


bug: temporary scan list selection gets saved when switching vfo or using lock

happens because gRequestSaveSettings is set in COMMON_KeypadLockToggle() and COMMON_SwitchVFOs()
unsure of how to fix...
maybe have a gCurrentScanlist or something rather than setting gEeprom.*
and the same thing happens with squelch via f+up/down shortcut.

Does anyone have a problem with that?


:seedling: v3 upgrade changes

Please check if the PR fulfills these requirements

[ ] Tests for the changes have been added (for bug fixes / features)
[x] PR title follows the guidelines defined in  https://github.com/ossf/scorecard/blob/main/CONTRIBUTING.md#pr-process

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

What is the current behavior? (You can also link to an open issue here)

What is the new behavior (if this is a feature change)?
v3 go.mod changes

Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)
None

Other information:

Merging after having a offline discussion with @laurentsimon.


received unexcept payload from java producer

java client
./bin/pulsar-client produce persistent://my-tenant/my-namespace/my-topic20-partition-10 -m "hello-pulsaraaaaaaaaa aaaaaaaaaaa   aaaaa bbbb"
go received payload(bytes)
[0 0 0 2 24 46 104 101 108 108 111 45 112 117 108 115 97 114 97 97 97 97 97 97 97 97 97 32 97 97 97 97 97 97 97 97 97 97 97 32 32 32 97 97 97 97 97 32 98 98 98 98]
go received payload(string)
.hello-pulsaraaaaaaaaa aaaaaaaaaaa   aaaaa bbbb
The first few bytes of the payload are a bit strange. Is it because of java-client or go-client or pulsar?

java client
./bin/pulsar-client produce persistent://my-tenant/my-namespace/my-topic20-partition-10 -m '"name":"bobaa"'
go received payload(bytes)
[0 0 0 2 24 12 110 97 109 101 34 58 34 98 111 98 97 97]
go received payload(string)
(There is a blank line here.)
name":"bobaa
This time there are some characters missing, and the double quotes at the beginning and end are gone.


AlwaysEncrypted bug in 10.2 and wrong description for sp_describe_parameter_encryption in documentation

Hi,
We've tried to upgrade the JDBC driver to the most recent stable version (10.2) and found that it has a bug in AlwaysEncrypted - Randomized and Deterministic encryptions are flipped. Most likely this happened because of the incorrect sp_describe_parameter_encryption description in docs, which has been corrected and merged today - https://github.com/MicrosoftDocs/sql-docs/pull/7724
Looks like the preview version 11 has it fixed but I couldn't find any related issues here.
Was it identified and corrected?
Also, maybe it makes sense to release a fix for the stable version as well?
It broke some of our processes that relied on the most recent versions and we had to override the driver version in this case.
Thanks

Hi @alex-bochkov , that sounds strange because the Randomized and Deterministic encryptions weren't ever flipped at all in the driver. They were always Deterministic = 1 and Randomized = 2. Plus I don't recall a bug like they being discussed.
In the mean time while I investigate this, could you provide the error/stacktrace of the issue you got in 10.2?

@tkyc here is what we've found:

In 9.4 and 11.1.2 AlwaysEncrypted works as expected with no issues (I may need to ask our developers to double-check the 11.1.2).
In 10.2 we are seeing this error (the column has Deterministic encryption):

[ERROR] 21:46:30.595 [exec-1] com.glassdoor.ex.common.web.ExceptionAdvice - com.microsoft.sqlserver.jdbc.SQLServerException:
Operand type clash: nvarchar(118) encrypted with (encryption_type = 'DETERMINISTIC',
encryption_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256',
column_encryption_key_name = 'cek', column_encryption_key_database_name = 'scimProvider')
is incompatible with nvarchar(236) encrypted with (encryption_type = 'RANDOMIZED',
encryption_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256',
column_encryption_key_name = 'cek', column_encryption_key_database_name = 'scimProvider')

@tkyc and we can't reproduce it again in a different environment... sorry!
A typo in the documentation made me think there was a bug.
Closing this issue.

@alex-bochkov no worries, just recalling from memory that error looks like a configuration problem. I'd double check the connection string for columnEncryptionSetting=Enabled, make sure the encryption types are as expected when setting up AE and also I recall needing to use parameterized queries when manipulating encrypted columns.


Provide a more ideal example for scheduler extender policy.

We now use default predicates/priorities if they are unspecified in the policy
config (kubernetes/kubernetes#59363).
The other example in ./scheduler-policy-config.json shows how to use priorities
and predicates.
Let's use this example to show how to use extenders. When you are using
extenders you don't necessarily want to mess with priorities and predicates
(kubernetes/kubernetes#45188).
This was previously kubernetes/kubernetes#62186

/assign @ahmetb
This was LGTM'd in https://github.com/kubernetes/kubernetes/pull/62186

/hold
I am confused, why is there duplication:
https://github.com/kubernetes/examples/blob/master/scheduler/scheduler-policy-config-with-extender.json
https://github.com/kubernetes/examples/blob/master/staging/scheduler-policy-config-with-extender.json
Maybe I should just wait for the move from kubernetes/kubernetes to kubernetes/examples to complete before making any changes.

@mindprince yeah we just made a mistake earlier today: https://github.com/kubernetes/examples/pull/205#issuecomment-379825170
I'm waiting for a PR from @resouer to move this file to staging/.

/hold cancel

/lgtm
/approve

I am working on it, will send it out today.

You don't need to anymore.

Thanks!


Add renacidc to latest

Please add my adapter ioBroker.renacidc to latest.
This pull request was created by https://www.iobroker.dev c0726ff.

First of all - THANK YOU for the time and effort you spend to maintain this adapter.
I would like to give some (preliminary) feedback based on my personal oppinion. This is NOT an offical review and @Apollon77 might have several additional suggestions or even a different oppinion to one or the other statement. Please feel free to contact him (or wait for a response from him) if you cannot follow my suggestsions or before you spend major effort.

[ ] Readme.md should contain a link to the manufacturer and/or device
The README.md of any adapter related to device or multiple devices of a manufacturer should contain a link the manufacturers website and/or to a description of the device. This is to enable new users to easily check wether they associate the adapter with the correct device(s). (See https://github.com/ioBroker/ioBroker.repositories#requirements-for-adapter-to-get-added-to-the-latest-repository paragraph 4.)

[ ] module apiClient has empty lines
consider removing some empty lines from apiCLient (non blocking)

[ ] invalid characters should be filtered from object ids
Some characters are not allowed to be used as part of an object id. If an object id is not hardcoded or even depending on user input you should ensure that such an object id does not contain an invalid character.  Iobroker provides the constant adapter.FORBIDDEN_CHARS, i.e. by using the following snippet:

function name2id(pName) {
    return (pName || '').replace(adapter.FORBIDDEN_CHARS, '_');
}

As object ids are built using stationId and key you should filter for invalid charactes transmitted by web service. There's always a possibility that the external service changed the data returned and even such a case should not generate invalid states.

[ ] reevaluate state roles
Only the values specified here (https://github.com/ioBroker/ioBroker.docs/blob/master/docs/en/dev/stateroles.md) may be used as state roles. Do not invent new names as this might disturb the functionalyity of other adapters or vis.
In addition the roles MUST match the read/write functionality. As an example a role value.* requires that the state is a readable state. Input states (write only) should have roles like level.*. Please read the description carefully. States with role 'button' should (must) have attribute 'common.read=false' set. A button ( "Taster" in german) only triggers when you press but else has no state), so it should also be not readable. This is also like HomeMatic does it. A switch has clear states true or false and so can be read.
Please avoid using general roles (state, value) whenever a dedicated role exists. It looks like you are always using role = value. Setting correct roles (and units) should be possible using a table for a list known keys. If the webservice adds new keys later, one could add the role/unit Info with a new adapter release later.

[ ] consider using adapter.setTimeout / this.setTimeout instead of (standard) setTimeout
The adapter package provides wrapper routines for native setTimeout, setInterval, clearTimeout and clearInterval. Using those routines ensures that timers are cancelled on on load. Additional checks on thomse limits might be performed, too. So consider replacing native setTimeout/clearTimeout by adapter.setTimeout/adapter.clearTimeout or this.setTimeout/this.clearTimeout. The same refers to setInterval/clearInterval.

Thanks for reading and evaluating this suggestions.
McM1957
Please add a comment when you have reviewed and fixed the suggestionsor at least commented the suggestions and you think the adapter is ready for a re-review!

@raschy
Do you need any help?
Please add a comment when you have reviewed and fixed the suggestionsor at least commented the suggestions and you think the adapter is ready for a re-review!

I have edited the comments in the first adapter review in the points 'Readme.md', the interception of 'Forbidden_Chars' and the specification of the 'stateroles' to the best of my ability. I could not understand the reference to the 'setTimeout'.
While working through the empty lines in 'apiClient.js', I came across the warning in VSC: "Property 'default' does not exist on type 'AxiosStatic'. Did you mean 'defaults'?". (See also in starters-adapter-development'.) I can't find a solution to this.

@mcm1957 Hopefully I have corrected all the deficiencies. Please review again.

I could not understand the reference to the 'setTimeout'.

js provides a set of functions setTimeout / clearTimeout / setInterval / clearInterval
ioBroker adaptercore provides warppers for thos functions named identically but located at the adapter namespace. So ypu can use them by writing adapter.setTimes (classicmode) or this.setTimeout (class mode). The benefit of using the wrappers is, that the adaptercore has some firwealls built in to handle "forgotten" cleanups and has (or will have) checks for parameter valueas so that i.e. values too big do not result in immidate execution or something like this. Simpl adding a tzhsi. in formt of setInterval and clearInterval should do the magic.
I do not consider this blocking - take it as a suggestion for next revision.

BUT I think I detected a new issue.
At https://github.com/raschy/ioBroker.renacidc/blob/bd4327bed1585b12b7186aa9f02f9d1926f0ccef/main.js#L115 you remove invalid characters from the key. But I think this conversion is missing for deleteDeviceState. Please check - I do not consider this as blocking too but only as a normal issue / bug (if ist not ok at all anyway).

RE-CHECK!

Your adapter has been released to latest repository lately.
Please create a forum topic at https://forum.iobroker.net/category/91/tester named 'Test adapter xxxx' to invite users to test the adapter. Some feedback at forum is desired before adapter is released to stable repository in future.
If some other thread discussing the adapter already exists, its ok too - you do not need to open a second topic in this case.


Use StringEx to generate slugs

See individual commits for more details, but this library seems to support more characters than the built in Rails transliteration and should avoid any issues we've been seeing with empty string outputs.
Trello Card

And it looks as though this code is only called on "first draft", so we don't have to worry about existing slugs, do we?

That's right, this will only affect new editions.

This supersedes https://github.com/alphagov/specialist-publisher/pull/1771.


sphinxbase: add build dependencies to sphinxbase

sphinxbase is linked to libsndfile1, libasound from alsa-lib and
libsamplerate0, but these build dependencies are missing in the
recipe.
This update adds the missing dependencies.
Signed-off-by: Dmitry Rozhkov<EMAIL_ADDRESS>

Thanks for looking into the issues of the sphinxbase recipe. We have been recording issues #343, #344 and #400 about sphinxbase and its dependent recipe ros-pocketsphinx, but never got to address them.
Are these three issues resolved with your commit?
Then you can add (resolves #343, #344, #400) to your commit message, which should resolve them in the issue tracker automagically once the pull request is merged.

Accidently closed the pull request by clicking on the wrong button...

I've added the resolves tag for #343. #344 must be an overlinking issue. IIRC OE has an option preventing generation of la-files to prevent it.
I've looked at sphinxbase's configure.in and it seems #400 needs extra care: it links to what ever is available in the build environment. If both PulseAudio and ALSA are present it chooses PulseAudio. I think the recipe has to be reworked eventually to add conditional builddeps depending on desired features. But ultimately it can be fixed when OE starts to support isolated builds (that's work in progress).


early stop

Is early stopping an option when working from the command line? I keep counting 500 steps and keeping track of the val_loss and it won't stop training. Am I missing something?

Added a command line option to set number of steps for early stopping (disabled by default) and fixed some early stopping logic in  7f1b2bd1d681ede181f36e1ee7db380dd474e3d7


drag n drop

Hello,
I cannot seem to make the calendar editable? Hope you can help me.
I am loading the events from a database.
Controller:
public function actionAllEventsedofre()
{
$events = Events::find()->all();
$tasks = [];
$draggable = "fc-draggable fc-resizable";
foreach ($events as $eve) {
$event = new \yii2fullcalendar\models\Event();
$house = House::getHouseAddress($eve->house_id);
$event->id = $eve->event_id;
$event->start = $eve->start;
$event->end = $eve->end;
$event->title = $eve->title;
$event->description = $house;
$event->className = $draggable;
$event->editable = true;
$event->backgroundColor = $eve->background_color;
$tasks[] = $event;
}
return $this->render('all-eventsedofre', [
'events' => $tasks,
]);
}
View:
edofre\fullcalendar\Fullcalendar::widget([
'events => $events,
'options'       => [
'id'       => 'calendar',
'language' => 'nl',
],
'clientOptions' => [
'weekNumbers' => true,
'selectable'  => true,
'selectHelper' => true,
'editable' => true,
'startEditable' => true,
'durationEditable' => true,
'droppable' => true,
'draggable' => true,
'defaultView' => 'agendaWeek',
'eventResize' => new JsExpression("
function(event, delta, revertFunc, jsEvent, ui, view) {
console.log(event);
}
"),
]);
Thanks

With some tweaks to the above code I can drag/drop/resize events without a problem. However in your code I see some things that might cause the problems you're having.

Did you extend the original calendar model? Are you sure that the properties(most important editable) you're setting are being passed through correctly? Maybe check if editable, startEditable & durationEditable are not false.
In the view you fill the events with a JSON response from Url::to(['calendar/events', 'id' => $uniqid]) and not your $events array.

Thanks for the response.
Could you tell me the tweaks you made?
I followed an example you had and did not realize I loaded the events in json.
I will check it out tomorrow.
Thanks

I deleted the json and added the model.
I edited my original post sending the model to the view.
Extend original calendar mode?  How?  Sorry, clueless.
editable = 1
startEditable = 1
durationEditable = 1
However, now the calendar displays correctly but it is blank

Are you sure the event dates are correct? And that the dates from the events are in the week you're currently looking at in the calendar?
Check to make sure that the start and/or end attributes are according to this format '2017-04-02T12:00:00'

The dates are 2017-03-30 13:30:00
There is no T between date and time.

Ok, So here is what I have done.
Controller:
Changed this line:
$event = new \yii2fullcalendar\models\Event();
to $event = new \edofre\fullcalendar\models\Event();
In the View:
Added this block before widget
<?php foreach ($events as $event) {     echo $event->id;     echo $event->start;     echo $event->end;     echo $event->editable;     echo $event->startEditable;     echo $event->durationEditable;     die();     }     ?>

That date format should work, can you share your full controller and full view?

controller:
 [
           'class' => \yii\filters\AccessControl::className(),
           'only' => ['index', 'all-events', 'all-eventsmod', 'employee_schedule', 'view','create', 'update', 'delete'],
           'rules' => [
               [
                   'actions' => ['index', 'all-events', 'all-eventsmod', 'employee_schedule', 'create', 'view', 'update'],
                   'allow' => true,
                   'roles' => ['@'],
                   'matchCallback' => function ($rule, $action) {
                    return PermissionHelpers::requireMinimumRole('Admin')
                    && PermissionHelpers::requireStatus('Active');
                   }
               ],
                [
                   'actions' => [ 'delete'],
                   'allow' => true,
                   'roles' => ['@'],
                   'matchCallback' => function ($rule, $action) {
                    return PermissionHelpers::requireMinimumRole('SuperUser')
                    && PermissionHelpers::requireStatus('Active');
                   }
               ],

           ],

       ],

      'verbs' => [
                'class' => VerbFilter::className(),
                'actions' => [
                    'delete' => ['post'],
                ],
            ],
        ];
    }

    /**
     * Lists all events models.
     * @return mixed
     */
    public function actionAllEventsedofre()
    {
        $events = Events::find()->all();
        $tasks = [];
        $draggable = "fc-draggable fc-resizable";
        foreach ($events as $eve) {

            $event = new \edofre\fullcalendar\models\Event();

            $house = House::getHouseAddress($eve->house_id);

            $event->id = $eve->event_id;
            $event->start = $eve->start;
            $event->end = $eve->end;
            $event->title = $eve->title;
            //$event->description = $house;
            $event->className = $draggable;
            $event->editable = true;
            $event->startEditable = true;
            $event->durationEditable = true;
            $event->backgroundColor = $eve->background_color;
            $tasks[] = $event;
        }

            return $this->render('all-eventsedofre', [
            'events' => $tasks,
        ]);

    }

    /**
     * Lists all Events models.
     * @return mixed
     */
    public function actionIndex()
    {
        $searchModel = new EventsSearch();
        $dataProvider = $searchModel->search(Yii::$app->request->queryParams);

        return $this->render('index', [
            'searchModel' => $searchModel,
            'dataProvider' => $dataProvider,
        ]);
    }

    /**
     * Displays a single Events model.
     * @param integer $id
     * @return mixed
     */
    public function actionView($id)
    {
        return $this->render('view', [
            'model' => $this->findModel($id),
        ]);
    }

    /**
     * Creates a new Events model.
     * If creation is successful, the browser will be redirected to the 'view' page.
     * @return mixed
     */
    public function actionCreate()
    {
        $model = new Events();

        if ($model->load(Yii::$app->request->post()) && $model->save()) {

            $yearEnd = "2018 01 01 00:00";

            $repeats = House::getRepeatEvent($model->house_id);
            $frequency = House::getFrequency($model->house_id);

            if ($repeats === 1) {

                while($model->start < $yearEnd){

                $address = House::getHouseAddress($model->house_id);

                $model->event_id = ($model->event_id + 1);
                    $startDate = $model->start;
                    $endDate = $model->end;
                    $model->start = date('Y-m-d H:i', strtotime($startDate. ' +'.$frequency.'  days'));
                    $model->end = date('Y-m-d H:i', strtotime($endDate. ' +'.$frequency.' days'));
                    $model->description = '';
                    $model->isNewRecord = true;
                    $model->save(false);
                }
            }

            return $this->redirect(['view', 'id' => $model->event_id]);
        }

        else {
           return $this->render('create', [
                'model' => $model,
            ]);

        }

}

    /**
     * Updates an existing Events model.
     * If update is successful, the browser will be redirected to the 'view' page.
     * @param integer $id
     * @return mixed
     */
    public function actionUpdate($id)
    {
        $model = $this->findModel($id);

        if ($model->load(Yii::$app->request->post()) && $model->save()) {
            return $this->redirect(['view', 'id' => $model->event_id]);
        } else {
            return $this->render('update', [
                'model' => $model,
            ]);
        }
    }

    /**
     * Deletes an existing Events model.
     * If deletion is successful, the browser will be redirected to the 'index' page.
     * @param integer $id
     * @return mixed
     */
    public function actionDelete($id)
    {
        $this->findModel($id)->delete();

        return $this->redirect(['index']);
    }

    public function actionCancel()
    {
        $model= new DeleteEvents();
        if ($model->load(Yii::$app->request->post()))
        {
            $from = date("Y-m-d", strtotime($model->start_date));
            $to = date("Y-m-d", strtotime($model->end_date));
            $events = Events::find()->where(['between', 'start', $from, $to])
            ->andWhere(['house_id'=> $model->house_id])->all();
            echo "Start loop";

            $count = [];
            foreach ($events as $eve) {
                $count = $count + 1;
                $eve->delete();

            }echo $count.' '."rows deleted";
                echo "";
            die();
            return $this->render('index', [
            'model' => $model,
            ]);
        } else {
            return $this->render('cancel', [
                'model' => $model,
            ]);
        }
    }

    public function actionDeleteAll()
    {
        $model= new DeleteEvents();
        $model = find() -> where(['between', 'start', $events -> a, $salesReport -> toDate]);
    }

    public function actionSubcat() {
        $out = [];
        if (isset($_POST['depdrop_parents'])) {
            $parents = $_POST['depdrop_parents'];
            if ($parents != null) {
                $cat_id = $parents[0];
                $out = House::getOptionsbyHouse($cat_id);
                echo Json::encode(['output' => $out, 'selected' => '']);
                return;
            }
        }
        echo Json::encode(['output' => '', 'selected' => '']);
    }

    /**
     * Finds the Events model based on its primary key value.
     * If the model is not found, a 404 HTTP exception will be thrown.
     * @param integer $id
     * @return Events the loaded model
     * @throws NotFoundHttpException if the model cannot be found
     */
    protected function findModel($id)
    {
        if (($model = Events::findOne($id)) !== null) {
            return $model;
        } else {
            throw new NotFoundHttpException('The requested page does not exist.');
        }
    }
}

view:
`<?php
use yii\helpers\Html;
use yii\grid\GridView;
use yii\web\JsExpression;

/* @var $this yii\web\View */
/* @var $searchModel backend\models\search\EventsSearch */
/* @var $dataProvider yii\data\ActiveDataProvider */

$this->title = 'Employee Payroll';
$this->params['breadcrumbs'][] = $this->title;

?>

<?= Html::encode($this->title) ?>

    <?= Html::a('Create Emolyee Payroll', ['create'], ['class' => 'btn btn-success']) ?>
    <?= Html::a('Edit Emolyee Payroll', ['index'], ['class' => 'btn btn-primary']) ?>

<?= edofre\fullcalendar\Fullcalendar::widget([
    'events' => $events,
    'options'       => [
        'id'       => 'calendar',
        'language' => 'en',
    ],
    'clientOptions' => [
        'weekNumbers' => true,
        'selectable'  => true,
        'selectHelper' => true,
        'editable' => true,
        'startEditable' => true,
        'durationEditable' => true,
        'droppable' => true,
        'draggable' => true,
        'defaultView' => 'agendaWeek',
        'eventResize' => new JsExpression("
            function(event, delta, revertFunc, jsEvent, ui, view) {
                console.log(event);
            }
        "),

    ],

]);
?>

`

view:
`<?php
use yii\helpers\Html;
use yii\grid\GridView;
use yii\web\JsExpression;

/* @var $this yii\web\View */
/* @var $searchModel backend\models\search\EventsSearch */
/* @var $dataProvider yii\data\ActiveDataProvider */

$this->title = 'Employee Payroll';
$this->params['breadcrumbs'][] = $this->title;

?>

<?= Html::encode($this->title) ?>

    <?= Html::a('Create Emolyee Payroll', ['create'], ['class' => 'btn btn-success']) ?>
    <?= Html::a('Edit Emolyee Payroll', ['index'], ['class' => 'btn btn-primary']) ?>

<?= edofre\fullcalendar\Fullcalendar::widget([
    'events' => $events,
    'options'       => [
        'id'       => 'calendar',
        'language' => 'en',
    ],
    'clientOptions' => [
        'weekNumbers' => true,
        'selectable'  => true,
        'selectHelper' => true,
        'editable' => true,
        'startEditable' => true,
        'durationEditable' => true,
        'droppable' => true,
        'draggable' => true,
        'defaultView' => 'agendaWeek',
        'eventResize' => new JsExpression("
            function(event, delta, revertFunc, jsEvent, ui, view) {
                console.log(event);
            }
        "),

    ],

]);
?>

`

Ok, make sure that the dates from your Events::find()->all(); models are properly set. If I copy the code for your views and controller and change it so it uses other events than Events::find()->all() it works.
public function actionCalendarTest()
    {
        $events = [
            // minimum
            new Event([
                'id'    => uniqid(),
                'title' => 'Appointment #' . rand(1, 999),
                'start' => '2017-04-03 14:00:00',
            ]),
            // Everything editable
            new Event([
                'id'    => uniqid(),
                'title' => 'Appointment #' . rand(1, 999),
                'start' => '2017-04-03 14:30:00',
                'end'   => '2017-04-03 15:00:00',
            ]),
            // No overlap
            new Event([
                'id'    => uniqid(),
                'title' => 'Appointment #' . rand(1, 999),
                'start' => '2017-04-03 15:30:00',
                'end'   => '2017-04-03 19:30:00',
            ]),
            // Only duration editable
            new Event([
                'id'    => uniqid(),
                'title' => 'Appointment #' . rand(1, 999),
                'start' => '2017-04-04 11:00:00',
                'end'   => '2017-04-04 11:30:00',
            ]),
            // Only start editable
            new Event([
                'id'    => uniqid(),
                'title' => 'Appointment #' . rand(1, 999),
                'start' => '2017-04-05 14:00:00',
                'end'   => '2017-04-05 15:30:00',
            ]),
        ];

        $tasks = [];
        $draggable = "fc-draggable fc-resizable";
        foreach ($events as $eve) {
            $event = new \edofre\fullcalendar\models\Event();
            $event->id = $eve->id;
            $event->start = $eve->start;
            $event->end = $eve->end;
            $event->title = $eve->title;
            //$event->description = $house;
            $event->className = $draggable;
            $event->editable = true;
            $event->startEditable = true;
            $event->durationEditable = true;
            $event->backgroundColor = $eve->backgroundColor;
            $tasks[] = $event;
        }

        return $this->render('calendartest', [
            'events' => $tasks,
        ]);
    }

<?= edofre\fullcalendar\Fullcalendar::widget([
            'events'        => $events,
            'options'       => [
                'id'       => 'calendar',
                'language' => 'en',
            ],
            'clientOptions' => [
                'weekNumbers'      => true,
                'selectable'       => true,
                'selectHelper'     => true,
                'editable'         => true,
                'startEditable'    => true,
                'durationEditable' => true,
                'droppable'        => true,
                'draggable'        => true,
                'defaultView'      => 'agendaWeek',
                'eventResize'      => new JsExpression("
                    function(event, delta, revertFunc, jsEvent, ui, view) {
                        console.log(event);
                    }
                "),
            ],
        ]);
        ?>

If I run my controller and echo out the result of the foreach loop  event. Isn't this in the right format?
Do I have to run the foreach loop in the view?  It would appear that I have the correct format for the $events model.
foreach ($events as $eve) {
        $event = new \edofre\fullcalendar\models\Event();

        $house = House::getHouseAddress($eve->house_id);

        $event->id = $eve->event_id;
        $event->start = $eve->start;
        $event->end = $eve->end;
        $event->title = $eve->title;
        //$event->description = $house;
        //$event->className = $draggable;
        //$event->editable = true;
        //$event->startEditable = true;
        //$event->durationEditable = true;
        //$event->backgroundColor = $eve->background_color;
        $tasks[] = $event;
        echo $event->id;
        echo "
";
        echo $event->title;
        echo "
";
        echo $event->start;
        echo "
";
        echo $event->end;
        echo "
";

    }die();

Result:
1
Adam
2016-12-08 12:00:00
2016-12-08 13:30:00
2
Adam
2016-12-22 12:00:00
2016-12-22 13:30:00
3
Adam
2017-01-05 12:00:00
2017-01-05 13:30:00
4
Adam
2017-01-19 12:00:00
2017-01-19 13:30:00
5
Adam
2017-02-02 12:00:00
2017-02-02 13:30:00
6
Adam
2017-02-16 12:00:00
2017-02-16 13:30:00
7
Adam
2017-03-02 12:00:00
2017-03-02 13:30:00
8

And the calendar and events show up but you can't move them right?

Unfortunately the events do not show up.

Do you get any errors in your browser console? And silly question but do the event dates match the currently displayed date on the calendar? That you're not displaying a week that has no events.

No errors.  This would help, but no.
I have dates that would appear all year long. If I echo the $events array  2500 records.
I think that the line   'events' => $events;     somehow the information is not getting passed.

In your example
$events = [
// minimum
new Event([
'id'    => uniqid(),
'title' => 'Appointment #' . rand(1, 999),
'start' => '2017-04-03 14:00:00',
]),
When I try this I get an error  Event not found.
But when I add the edofre\fullcalendar\Fullcalendar\Event   There is no error but the event will not display

That's because I set the namespace at the top of my controller.
use edofre\fullcalendar\models\Event;

I see that now.  I had wrong use statement.
Still not rendering the events.  Will try to load calendar in new project.

Here is part of my $events array that I pass to the model:
[ 0 => yii2fullcalendar\models\Event#1 ( [id] => 1 [title] => 'Adam' [description] => '4777 Wilcox Road, Holt, MI 48842' [allDay] => null [start] => '2016-12-08 12:00:00' [end] => '2016-12-08 13:30:00' [ranges] => null [dow] => null [url] => null [className] => null [editable] => null [startEditable] => null [durationEditable] => null [source] => null [color] => null [backgroundColor] => ' #CC73E1' [borderColor] => null [textColor] => null [resourceId] => null [yii\base\Model:_errors] => null [yii\base\Model:_validators] => null [yii\base\Model:_scenario] => 'default' [yii\base\Component:_events] => [] [yii\base\Component:_behaviors] => null )

Hm, it could be that it's taking a super long time to render the events as it's 2500 events. Maybe you can fetch the events using AJAX and filter out the events that should not currently be displayed.

I'm closing this because there has been no response/update in a month.


Improving fstats error out

Closes #117

Codecov Report

Merging #120 (4ff5d70) into master (1750d99) will not change coverage.
The diff coverage is 0.00%.

@@           Coverage Diff           @@
##           master     #120   +/-   ##
=======================================
  Coverage   64.01%   64.01%
=======================================
  Files          18       18
  Lines        1937     1937
  Branches      128      128
=======================================
  Hits         1240     1240
  Misses        569      569
  Partials      128      128

Impacted Files
Coverage Δ

src/Poseidon/CLI/FStats.hs
19.02% <0.00%> (ø)

Continue to review full report at Codecov.

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

Looks fine to me - a simple fix


Yet another Yarn 3 PNP issue

What version of Remix are you using?
1.17.1
Are all your remix dependencies & dev-dependencies using the same version?

[X] Yes

Steps to Reproduce
I started with the supposedly simple requirement, to share some TS code between two Remix apps. While I was successful at doing this quite easily, my problems started when I wanted to share a dependency (remix-validated-form) between the app and the library.
I have created a minimal repository showing the different behavior between yarn 1, yarn 3 with node-modules and yarn 3 pnp, here: https://github.com/zerotomvp/remix-ts-integrated-monorepo
main branch is yarn 1 and there are corresponding branches for yarn 3.
Expected Behavior
That this easy to do and works with PnP.
Actual Behavior
Yarn 1: all good
Yarn 3 node-modules: all good
Yarn 3 PnP strict gives:
Error: remix-validated-form tried to access @remix-run/server-runtime (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound.

Required package: @remix-run/server-runtime (via "@remix-run\server-runtime")
Required by: remix-validated-form@virtual:f6918c7a17927f97a2f127cf3302a79aa5ee57f720ae4a34ce46af5b0465c755b3be5b37a7c066c71c3b61711cc8975d28cd0ea7adb06a5bcfbe08cba89201d9#npm:5.0.1 (via C:\Users\georgiosd\Documents\remix-4\.yarn\__virtual__\remix-validated-form-virtual-c984298908\0\cache\remix-validated-form-npm-5.0.1-bd764c4e65-f9e52a4ff7.zip\node_modules\remix-validated-form\dist\)
Ancestor breaking the chain: remix@workspace:remix

Yarn 3 PnP loose imports the remix-validated-form package twice, creating two different versions of its context, and thus not working.

Yeah I think I might have solved this using the packageExtensions setting in .yarnrc.yml:
packageExtensions:
    remix-validated-form@*:
        dependencies:
            '@remix-run/server-runtime': 'latest'

This sounds like a problem with yarn pnp?  Is there something specific that Remix is doing that causes this?

Hey @georgiosd,
The issue you're encountering is due to Yarn Berry's (v2 and above) strict dependency resolution. remix-validated-form doesn't declare @remix-run/server-runtime as a direct dependency, which Yarn Berry enforces.
Solutions:

Contact remix-validated-form Maintainer: The best long-term solution is for the library to explicitly list @remix-run/server-runtime in its package.json dependencies.
Temporary Fix: Adjust your .yarnrc.yml with a packageExtensions entry:

packageExtensions:
  remix-validated-form@*:
    dependencies:
      '@remix-run/server-runtime': 'latest'

This behavior is a hallmark of Yarn Berry's design to ensure more predictable and reliable builds.

Thanks @green-0-rabbit, we had to drop remix on this project to meet a deadline, but I'll let the author know.

Hey @green-0-rabbit - @airjp73 did add the peer dependency - I guess in this commit but I still get the error in the project repo I posted above (updated with new version).
Any ideas?

Hey @georgiosd, I just tested with the new version of @remix-validated-form/with-zod. Every thing seems good.
 remix-jokes yarn install
➤ YN0000: ┌ Resolution step
➤ YN0002: │ root-workspace-0b6124@workspace:. doesn't provide remix-validated-form (p63ddf), requested by @remix-validated-form/with-zod
➤ YN0002: │ root-workspace-0b6124@workspace:. doesn't provide zod (pa2323), requested by @remix-validated-form/with-zod

@airjp73 sounds like that's the issue?

the create-remix package has similar problem：
yarn create remix --template remix-run/remix/templates/cloudflare-pages
➤ YN0000: ┌ Resolution step
➤ YN0000: └ Completed in 0s 966ms
➤ YN0000: ┌ Fetch step
➤ YN0013: │ which@npm:2.0.2 can't be found in the cache and will be fetched from the remote registry
➤ YN0013: │ wrap-ansi@npm:8.1.0 can't be found in the cache and will be fetched from the remote registry
➤ YN0013: │ wrappy@npm:1.0.2 can't be found in the cache and will be fetched from the remote registry
➤ YN0013: │ xtend@npm:4.0.2 can't be found in the cache and will be fetched from the remote registry
➤ YN0013: │ yallist@npm:4.0.0 can't be found in the cache and will be fetched from the remote registry
➤ YN0000: └ Completed in 2s 46ms
➤ YN0000: ┌ Link step
➤ YN0000: │ ESM support for PnP uses the experimental loader API and is therefore experimental
➤ YN0000: └ Completed
➤ YN0000: Done with warnings in 3s 233ms

C:\Users\hash\AppData\Local\Temp\xfs-665cdaa8\dlx-11728\.pnp.cjs:10576
      Error.captureStackTrace(firstError);
            ^

Error: create-remix tried to access fs-extra, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound.

Required package: fs-extra
Required by: create-remix@npm:2.0.1 (via C:\Users\hash\AppData\Local\Temp\xfs-665cdaa8\dlx-11728\.yarn\cache\create-remix-npm-2.0.1-c0c278e50e-a7447c16b7.zip\node_modules\create-remix\dist\)

and a similar workaround:
packageExtensions:
    create-remix@*:
        dependencies:
            'fs-extra': 'latest'

version<EMAIL_ADDRESS><EMAIL_ADDRESS>


Faraday::ConnectionFailed: Connection reset by peer

I have 700k articles. When i do Article.import i get an error "Faraday::ConnectionFailed: Connection reset by peer" after import some of articles.

Try using a client with support for persistent connections -- see README for elasticsearch-transport.

@krim Have you tried another HTTP library?

Using Faraday with Patron and gott the same thing.
Faraday::ConnectionFailed: Recv failure: Connection reset by peer

Appears to have been due to a 100+ MB file which exceeds the limit (configurable).

I'm seeing the same issue. I have reinstalled ruby using brew, rvm, with openssl from scratch... all to no avail. I've uninstalled / resinstalled all my gems, checked that my path is set correctly in my shell environment, but I have not gotten past this issue.
If someone was able to resolve this can you please take a minute to explain how you resolved it and what specifically was the problem? Thanks.!

Hi @krim @chappejw, Is this still an issue for you or can I close this? Let me know, thanks!

I am no longer experiencing this issue. I set everything up on a new machine and no problem. I believe my openSSL was replaced by a networking tool and this was the core issue. Go ahead and close.

Thanks @chappejw for letting me know!


TBA release date should be later than now.today()

Now swc would replace q1/2/3/4 with a specific month:
https://github.com/icue/SteamWishlistCalendar/blob/3d39cd82dd6175e8e47ef953a5319ac9c222c628/swc.py#L24-L29
But when the specified month has passed, and the game is still not released, the estimated time would be a past day.
For example, Betrix is set to release on "Q3 2023", which would be estimated to Aug 31. However, it's already September now and the estimated date should be postponed to the end of next month, i.e. Sep 30.
I tried to add such function here but failed somehow, hence the issue.
https://github.com/icue/SteamWishlistCalendar/blob/3d39cd82dd6175e8e47ef953a5319ac9c222c628/swc.py#L75-L85

Thanks for reporting the edge case. I believe this is closed now. Let me know otherwise.


chore: bdd-ghfjxy-import-1587763541 to 0.0.1

chore: Promote bdd-ghfjxy-import-1587763541 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Update docs

Hi, Seven
@medz
I have fixed a lots of things, here are highlights

Rephrase the sentences in readme.md
Removed the .babelrc file, since it is no longer in use
Use a better service for badges
Update the docs about options, which was outdated

All of above wont effect on any features of this plugin, these are just cosmetic changes.
Let me know if i need to change something.
Thanks.

Thanks


nrnivmodl-core generates a folder named x86_64/core

Wouldn't the name corenrn be better so as not to conflict with coredump names.
Also a folder x86_64/x86_64 is generated but is empty.

Wouldn't the name corenrn be better so as not to conflict with coredump names.

agree!

Also a folder x86_64/x86_64 is generated but is empty.

I haven't seen that. Does that happen always?


Make sure del works

Applicable Issues

N/A
Description of the Change

HDEL tried to delete a key that does not exist. Make sure it deletes properly.
Alternate Designs

None
Benefits

Proper clean up before registering a new execution space provider.
Possible Drawbacks

None
Sign-off

Developer's Certificate of Origin 1.1
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or
(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or
(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.
(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
Signed-off-by: Tobias Persson<EMAIL_ADDRESS>

Whoops. Wrong base


npm install -g pm2-zabbix Error Install RedHat 6

When I want to install when running npm install -g pm2-zabbix gives the following log
npm WARN addRemoteGit  greatcare/node-zabbix-sender#v0.3.0 resetting remote /root/.npm/_git-remotes/git-github-com-greatcare-node-zabbix-sender-git-328e4dce because of error: { [Error: not found: git] code: 'ENOGIT' }
npm ERR! git clone --template=/root/.npm/_git-remotes/_templates --mirror git@github.com:greatcare/node-zabbix-sender.git /root/.npm/_git-remotes/git-github-com-greatcare-node-zabbix-sender-git-328e4dce: undefined
npm ERR! git clone --template=/root/.npm/_git-remotes/_templates --mirror git@github.com:greatcare/node-zabbix-sender.git /root/.npm/_git-remotes/git-github-com-greatcare-node-zabbix-sender-git-328e4dce: undefined
npm ERR! Linux 2.6.32-696.18.7.el6.x86_64
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install" "-g" "pm2-zabbix"
npm ERR! node v4.8.7
npm ERR! npm  v2.15.11
npm ERR! code ENOGIT
npm ERR! not found: git
npm ERR!
npm ERR! Failed using git.
npm ERR! This is most likely not a problem with npm itself.
npm ERR! Please check if you have git installed and in your PATH.
npm ERR! Please include the following file with any support request:
npm ERR!     /etc/zabbix/zabbix_agentd.d/npm-debug.log
necesito ayuda

Hi. It looks like you haven't got git installed.on that host. Since one of the dependencies is hosted directly on GitHub, you currently need git for cloning that repository.

Hi.
I was able to install, but when executing
pm2-zabbix --monitor --debug
gives the next error
{"name":"pm2-zabbix","hostname":"VDC-07-106321","pid":21823,"level":50,"event":"PM2ZabbixMonitor#processListSendingError","error":{"killed":false,"code":1,"signal":null,"cmd":"/usr/bin/zabbix_sender --config /etc/zabbix/zabbix_agentd.conf --input-file -"},"msg":"Failed to send process list with stats to server: Error: Command failed: /usr/bin/zabbix_sender --config /etc/zabbix/zabbix_agentd.conf --input-file -\n","time":"2018-03-15T14:05:52.293Z","v":0}
{"name":"pm2-zabbix","hostname":"VDC-07-106321","pid":21823,"level":50,"event":"PM2ZabbixMonitor#PM2StatusSent","error":{"killed":false,"code":1,"signal":null,"cmd":"/usr/bin/zabbix_sender --config /etc/zabbix/zabbix_agentd.conf --input-file -"},"msg":"Failed to send PM2 status: Error: Command failed: /usr/bin/zabbix_sender --config /etc/zabbix/zabbix_agentd.conf --input-file -\n","time":"2018-03-15T14:05:52.320Z","v":0}

I have pretty much the same error but on Ubuntu 16.04. Any idea?


Schemas/Journal: FSSDiscoveryScan

It is proposed that the FSSDiscoveryScan event be allowed in the Journal schema.
Please discuss any objections, caveats or possible problems with this.

Progress is personal data and should be stripped.
NonBodyCount typically refers to transient signal sources and probably isn't useful to report either.

We'd need to enhance / augment with SystemName, SystemAddress, and StarPos.
Detecting bad augmented data might be difficult.

Progress is personal data and should be stripped.

Agreed.

NonBodyCount typically refers to transient signal sources and probably isn't useful to report either.

I'm going to wager someone will find it useful.  It's not PII.  It's not big and spammy, just a simple count.  I say it should stay.

We'd need to enhance / augment with SystemName, SystemAddress, and StarPos.
Detecting bad augmented data might be difficult.

No different from the same issues with body scans, which we already augment in that manner.  In this case the event should trigger immediately a 'honk' completes, and it's simple counts, so I'd hope there'll be no issues with the event being delayed until after next jump.

Resolved by #140.


batch: True parallel table scan.

Currently, although we run table scan in parallel, in fact only one task truly works. This is a limitation in storage, and we need to make it truly parallel.

only one task truly works.

Are there more details on this?

only one task truly works.

Are there more details on this?

RowSeqScanExecutor::is_primary

Related: #311


Failed to inject image...   ... Error code 0xc0000135

(my main language is german so i use Google translate.)


Feat: ext hideSnackBar

Description

Basic Checklist

[x] ✨ Ran dartdoc
[x] 🛠 Added proper documentation
[x] ❌ No warnings or errors in the code
[x] ✅ If added a new extension, added in Readme and example too
[] 🧪 If added a new extension, written proper test cases for it

Type of Change

[x] ✨ New feature (non-breaking change which adds functionality)
[ ] 🛠 Bug fix (non-breaking change which fixes an issue)
[ ] ❌ Breaking change (fix or feature that would cause existing functionality to change)
[ ] 🧹 Code refactor
[ ] ✅ Build configuration change
[ ] 📝 Documentation
[ ] 🗑 Chore

@coder-Aayush please fix the PR

@coder-Aayush please fix the PR

okay

@coder-Aayush pipeline is failing

Closed as owner isn't working.


Rename message => blob where applicable

Context
https://github.com/celestiaorg/celestia-app/pull/978#discussion_r1016812915
Problem
The codebase currently uses the previous term message in a number of locations where blob is more accurate after https://github.com/celestiaorg/celestia-app/pull/978 merged.
Proposal
On a case by base basis, rename message, msg, or data => blob. Note: Cosmos SDK messages should still be called messages. We should only rename instances that refer to the data a user submits to be published to the Celestia blockchain.

[x] Update code: https://github.com/celestiaorg/celestia-app/pull/1060
[ ] Update ADRs: https://github.com/celestiaorg/celestia-app/issues/1531
[ ] Update specs: https://github.com/celestiaorg/celestia-app/issues/1532

Also instances of data may need to be renamed to blob. Ex:
https://github.com/celestiaorg/celestia-app/blob/b81723b114282f98007cb7a9066b0e69efebe98b/app/process_proposal.go#L26-L27

Will do this soon because it's leaking into other unrelated PRs. Unfortunately it may cause merge conflicts will several in-progress open PRs but the merge conflicts should be easy to resolve

https://github.com/celestiaorg/celestia-app/blob/main/docs/architecture/adr-001-abci%2B%2B-adoption.md contains code blocks which were helpful at the time of reviewing the ADR but the code blocks have become stale so renaming portions of it to resolve this issue seems futile. We can either:

remove all the code blocks that have diverged from their real implementations in main
update all the code blocks

Sure, will leave ADRs as-is for now.

Spun out two new issues so closing this


In ratchet --version output, please show real version (e.g. 0.5.0) instead of devel

New issue?

[X] I have reviewed the Known Issues and confirm this is not a known issue.

TL;DR
I downloaded the binary from the releases page and see devel in the version output instead of 0.5.0
Expected behavior
✗ ratchet --version
ratchet (0.5.0) (df0adb51bf6adce7a81095187c482de72c2d0e9d, darwin/amd64)

Observed behavior
✗ ratchet --version
ratchet (devel) (df0adb51bf6adce7a81095187c482de72c2d0e9d, darwin/amd64)

Version
0.5.0
On what operating system are you using ratchet?
Mac OS
CI/CD workflow file
No response
Relevant log output
No response
Additional information
No response

How did you install ratchet?

I downloaded the release from the github releases page.
wget https://github.com/sethvargo/ratchet/releases/download/v0.5.0/ratchet_0.5.0_darwin_$(uname -m).tar.gz
tar xvfz ratchet_0.5.0_darwin_$(uname -m).tar.gz
sudo mv ratchet /usr/local/bin
which ratchet
ratchet --version

Well, that was quite a rollercoaster of discovery: https://github.com/golang/go/issues/64246

Thanks for hunting that down and fixing it


Limit number of segments returned in path request

Fix for https://github.com/scionproto/scion/issues/2413
Note on implementation: a first attempt (~first commit in this PR) was to filter the lists of up, down and core segments individually -- as far as I understand this is analogous to how this happens in the python PS. However, the filtering to only return segments that can be connected to paths became rather unwieldy. Also, when selecting the segments, only the number of hops in an individual segment could be considered. The current implementation considers the number of hops in a path (consisting of a combination of up/core/down segments) which seems to make more sense.

This change is

Opened scionproto/scion#2452 instead.


enhancement: adding count of tasks in a running state to the dashboard card

This adds a blue count of running tasks, but does not add them to the line chart, because the line chart is cumulative and running is not a terminal state. it looks like this.

Daaaang @WillRaphaelson, legit.
Yeah this is actually pretty illuminating. The Total count includes running as do the ratios. I'm going to make a PR into this one with the fallowing updates:

Move running to the top, remove the ratio for it.
Make the ratio of the completed and failed/crashed to be a comparison of each other.
Also going to make the failed count gray if 0 so it's not unnecessarily red

I see now that the ratio was not including running before. I do see merit in running appearing here though, so will still implement these changes.


add int_rounding_mode

Before:

we only support one rounding mode auto.

After:

we support three roudning mode:

all: we round int variables at each iteration.
once: we only round int variables at the end of all iterations.
auto: we round int variables when min_loss < best_loss

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

Current dependencies on/for this PR:

dev

PR #5

PR #6   👈

This stack of pull requests is managed by Graphite.


Update instructions for migrating between CKAN instances

We were previously using the API to migrate data from one CKAN to another.  The new method takes a database dump and updates this to reflect the changes to the schema and models.
Trello card: https://trello.com/c/e3qWIvmc/48-implement-new-method-for-importing-data-from-old-ckan-to-new-ckan

The PostGIS extension is being installed by Puppet when the app is deployed (https://github.com/alphagov/govuk-puppet/blob/master/modules/govuk/manifests/apps/ckan/db.pp#L38).


Fix unavailable wallet id

After connecting with kmd, on refresh, the walletId is no longer available. This fetches it again if its gone, otherwise uses the cached id.

Maybe there is a better way to do this, by storing it in local state for example?

Thanks for the PR. Tested this and it works so I'm fine with merging this as-is.
It might be worthwhile to store the walletId and perhaps the token in local storage (not sure how sensitive that token is supposed to be?), then it could use the reconnect function which other providers use to restore their state after a browser refresh... e.g.:
  async reconnect(): Promise<Wallet | null> {
    this.walletId = await this.getWalletId();

    return {
      ...KMDWalletClient.metadata,
      accounts: await this.listAccounts(
        this.#wallet,
        await this.requestPassword()
      ),
    };
  }

I think def storing wallet id at least, maybe the token too? probably not the password though, if the token expires we can re-request the user enter their pw.
We can merge this for now to get it working then come back to update  w/ walletid && token


MJML couldn't build the proper version of PhantomJS. Restart VSCode in order to try it again.

Expected behavior
Install MJML in Visual Studio Code without an error
Actual behavior
After installing MJML I get this error in a popup
MJML couldn't build the proper version of PhantomJS. Restart VSCode in order to try it again.
Steps to reproduce the problem

Install Linux Mint 21.3 (Virginia)
Install Visual Studio Code 1.92.2 through Flatpak (Flathub)
Run Visual Studio Code and install the MJML fork. (This repo)

Can you check you're not running the Attila's version ? (You should use the 2nd result when searching for mjml not the 1st one)

Thank you for the fast response.
I use the second result as you can see here:

@iRyusa
I use Linux Mint 21.3 (Virginia). The preview works well. What downsides do I have with this error?

You shouldn't be able to do screenshot. Idk if we should keep this feature as PhantomJS isn't supported anymore

Switch to 2.x branch this feature has been completely removed.


fix for the issue 24

Description of your changes
fix issue ttps://github.com/upbound/provider-azure/issues/24

Fixes https://github.com/upbound/provider-azure/issues/24
I have:

[x] Run make reviewable test to ensure this PR is ready for review.

How has this code been tested

/test-examples="examples/streamanalytics/outputtable.yaml"

/test-examples="examples/streamanalytics/outputtable.yaml"

/test-examples="examples/streamanalytics/outputtable.yaml"

/test-examples="examples/streamanalytics/outputtable.yaml"

/test-examples="examples/streamanalytics/outputtable.yaml"

/test-examples="examples/streamanalytics/outputtable.yaml"

/test-examples="examples/streamanalytics/outputtable.yaml"

/test-examples="examples/streamanalytics/outputtable.yaml"

This PR is ready for review @turkenh


(macOS) same feed of YouTube gets less content on iCloud account

There may not be anything we can do, but we should check.

There may not be anything we can do, but we should check.

@kevinm6 Could you post the link to your Youtube feed so that I don't have to try and type it in from your screenshot?

@kevinm6 Could you post the link to your Youtube feed so that I don't have to try and type it in from your screenshot?

Yes, sure!
Sorry for not doing it already, @vincode-io !
Here it is:
https://www.youtube.com/feeds/videos.xml?channel_id=UChjRM_qQAaOAiLNbOGbYcRA

Yes, sure!
Sorry for not doing it already, @vincode-io !
Here it is:
https://www.youtube.com/feeds/videos.xml?channel_id=UChjRM_qQAaOAiLNbOGbYcRA

It looks like we would have to extend NNW to use Media RSS for us to get the data out of the Youtube RSS feed.  It looks like Feedbin supports this.

It looks like we would have to extend NNW to use Media RSS for us to get the data out of the Youtube RSS feed.  It looks like Feedbin supports this.

Got it! I'm using Feedly as sync service but I'm going to switch definitely to iCloud account when even iOS version will be available.

Got it! I'm using Feedly as sync service but I'm going to switch definitely to iCloud account when even iOS version will be available.

This is basically the same as #2721 so I'm closing it as a duplicate.

This is basically the same as #2721 so I'm closing it as a duplicate.


SimilarityTransform, regress target

what's the SimilarityTransform theory? I can't understand the SimilarityTransform function code. what i can refer to ?
although i can understand the pixel is indexed realitve to mean shape, i want to know why the gradient,(i.e. regress target) must be transform to mean shape coordination like this: regression_targets[i] = scale * regression_targets[i] * rotation;

@soundsilence Hi, I'm confused about the code of SimilarityTransform function.
I have read your post and also the appendix of the materials your referred. But I don't understand your method calculating the "scale" in the code.
In the post, we need firstly get a and b, and then using s^2 = a^2 + b^2 to the final result. But you just calculated the covariance matrix and used the ratio of their L2-norm as the scale. Could you explain the underlying principle?

@windpls I have not checked his code, but from your description, I know he is right at least in theory. Actually, in the appendix, TFC use covariance and inner product to compute the parameters of Similarity Transform

I have no idea what's going on with this function's code, but the output really doesn't make sense. I've tried implementing it as explained in Appendix B and it was simple and yielded a logical output that had lesser MSE than that produced by the current implementation. I suggest re-implementing this function.

Sorry that the code is very code and I am not even sure whether this is the version I use. Feel free to paste the correct code here and I would be happy to correct it. Thanks.

Here is my code, let me know if there's any adjustments to be made.
void SimilarityTransform(const Mat_& shape1, const Mat_& shape2,
Mat_& rotation,double& scale){
rotation = Mat::zeros(2,2,CV_64FC1);
scale = 0;
// center the data
double center_x_1 = 0;
double center_y_1 = 0;
double center_x_2 = 0;
double center_y_2 = 0;
for (int i = 0; i < shape1.rows; i++) {
    center_x_1 += shape1(i, 0);
    center_y_1 += shape1(i, 1);
    center_x_2 += shape2(i, 0);
    center_y_2 += shape2(i, 1);
}
center_x_1 /= shape1.rows;
center_y_1 /= shape1.rows;
center_x_2 /= shape2.rows;
center_y_2 /= shape2.rows;

Mat_<double> temp1 = shape1.clone();
Mat_<double> temp2 = shape2.clone();
for (int i = 0; i < shape1.rows; i++) {
    temp1(i, 0) -= center_x_1;
    temp1(i, 1) -= center_y_1;
    temp2(i, 0) -= center_x_2;
    temp2(i, 1) -= center_y_2;
}

double num_a = 0;
double num_b = 0;
double den = 0;

for (int i = 0; i < shape1.rows; i++) {
    num_a = num_a + temp1(i, 0) * temp2(i, 0) + temp1(i, 1) * temp2(i, 1);
    num_b = num_b + temp1(i, 0) * temp2(i, 1) - temp1(i, 1) * temp2(i, 0);
    den = den + temp1(i, 0) * temp1(i, 0) + temp1(i, 1) * temp1(i, 1);
}

double a = num_a / den;
double b = num_b / den;

double theta = atan(b / a);
double scale = sqrt(pow(a, 2) + pow(b, 2));
double cos_theta = cos(theta);
double sin_theta = sin(theta);
rotation(0,0) = cos_theta;
rotation(0,1) = -sin_theta;
rotation(1,0) = sin_theta;
rotation(1,1) = cos_theta;

}

Here is my code, let me know if there's any adjustments to be made.
void SimilarityTransform(const Mat_& shape1, const Mat_& shape2,
Mat_& rotation,double& scale){
rotation = Mat::zeros(2,2,CV_64FC1);
scale = 0;
// center the data
double center_x_1 = 0;
double center_y_1 = 0;
double center_x_2 = 0;
double center_y_2 = 0;
for (int i = 0; i < shape1.rows; i++) {
    center_x_1 += shape1(i, 0);
    center_y_1 += shape1(i, 1);
    center_x_2 += shape2(i, 0);
    center_y_2 += shape2(i, 1);
}
center_x_1 /= shape1.rows;
center_y_1 /= shape1.rows;
center_x_2 /= shape2.rows;
center_y_2 /= shape2.rows;

Mat_<double> temp1 = shape1.clone();
Mat_<double> temp2 = shape2.clone();
for (int i = 0; i < shape1.rows; i++) {
    temp1(i, 0) -= center_x_1;
    temp1(i, 1) -= center_y_1;
    temp2(i, 0) -= center_x_2;
    temp2(i, 1) -= center_y_2;
}

double num_a = 0;
double num_b = 0;
double den = 0;

for (int i = 0; i < shape1.rows; i++) {
    num_a = num_a + temp1(i, 0) * temp2(i, 0) + temp1(i, 1) * temp2(i, 1);
    num_b = num_b + temp1(i, 0) * temp2(i, 1) - temp1(i, 1) * temp2(i, 0);
    den = den + temp1(i, 0) * temp1(i, 0) + temp1(i, 1) * temp1(i, 1);
}

double a = num_a / den;
double b = num_b / den;

double theta = atan(b / a);
double scale = sqrt(pow(a, 2) + pow(b, 2));
double cos_theta = cos(theta);
double sin_theta = sin(theta);
rotation(0,0) = cos_theta;
rotation(0,1) = -sin_theta;
rotation(1,0) = sin_theta;
rotation(1,1) = cos_theta;

}

There's an error due to redefinition of scale, so remove the double before scale near the end.


http://learnosm.org/files/ => 404

follows https://github.com/hotosm/learnosm/issues/71#issuecomment-17603463 and https://github.com/hotosm/learnosm/commit/6c7efe3eac497a125fe3e4626242846adb2b0c85
follows feedback by a French user.

issue not resolved on French version

This has been fixed - presumably by althio with the patch #267


How to add function addLogo()

Could you explain with more details how to add the "addLogo() function"?
The file logo.php is empty.
Thanks in advance.

I do not recommend to use this option because there may be problems with the scanning of the qr code as some readers may not recognize the qrcode. In the Qrcode.php class there's an example of qrcode with logo.
If you want I have others qrcode creation method that I have installed for different clients, but I ask a fee. Email me to<EMAIL_ADDRESS>


Implementing ResNet using Firefly

Hello @klightz and @Cranial-XIX,
I want to implement the ResNet (Eg: PreActResNet-18) using Firefly. I see that you guys have put the code only for VGGNet and MobileNet. So firstly, is it possible to grow ResNets using Firefly?
If so, since the ResNet contains a PreActBlock, I cannot directly modify your VGG code to get a ResNet. I am unsure of defining a new class (sp.PreActBlock) since the sp.Conv2d class is very intricate and I don't know which all functions (spf_reset, spf_update, spf_forward... so on) to carry over from that to the new class.
If you have a Firefly code for ResNet, can you please share it? If not, can you suggest how to go about growing a ResNet using Firefly?
For example:
class PreActBlock(nn.Module):
    '''Pre-activation version of the BasicBlock.'''
    expansion = 1

    def __init__(self, in_planes, planes, stride=1, Conv2d = nn.Conv2d, BatchNorm2d = nn.BatchNorm2d):
        super(PreActBlock, self).__init__()
        self.bn1 = BatchNorm2d(in_planes)
        self.conv1 = sp.Conv2d(in_planes, planes, kernel_size=3, stride=stride, padding=1, bias=False)
        self.bn2 = BatchNorm2d(planes)
        self.conv2 = sp.Conv2d(planes, planes, kernel_size=3, stride=1, padding=1, bias=False)

        if stride != 1 or in_planes != self.expansion*planes:
            self.shortcut = nn.Sequential(
                Conv2d(in_planes, self.expansion*planes, kernel_size=1, stride=stride, bias=False)
            )

    def forward(self, x):
        out = F.relu(self.bn1(x))
        shortcut = self.shortcut(out) if hasattr(self, 'shortcut') else x
        out = self.conv1(out)
        out = self.conv2(F.relu(self.bn2(out)))
        out += shortcut
        return out

In the above case, I have kept everything same as the original PreActBlock, but only replaced nn.Conv2d to sp.Conv2d. Is this sufficient to make it work?

Hello @klightz and @Cranial-XIX,
I do not see any code for growing the networks deeper using Identity mapping and so on here. You have done experiments on growing the network deeper as indicated in Appendix B.2. of your paper.
Can you please update the repository with that code, or if it already exists here, please point me to that?

Hello, regarding the implementation of ResNet, there is no official implementation available. One of the main challenges lies in effectively handling the residual connections. These connections require a width adjustment module when adding width to different layers. Unfortunately, we have not yet developed a suitable approach to address this issue to achieve optimal performance.
For the deeper growth network, we did not clean up that code as it was part of an appendix experiment and the results did not demonstrate significant improvement compared to the baseline models. Also, that old experiment code is a little bit hard to find. I can try to search and see if I have any raw code for this part to send you.

Since the width does not change once the architecture is fixed, i.e., since the width does not change during training, can it not be implemented for a fixed width? For example, just ResNet-18 network (width=1)?
Please do provide me whatever code that is available with you for growing deeper networks as soon as you can, it will be very helpful.


[coder] Searching for a method in Spotter raises exception

Search for Object>>printString
==>

works now


EVEREST-633 Install monitoring stack onto a separate namespace

Install monitoring stack onto a separate namespace
Problem:
EVEREST-633
By moving to a multi-namespace everest-operator installation we configured the operator group of the percona-everest namespace to have N target namespaces.
The VM Operator doesn't support multi-namespaces so we can't deploy it to the same namespace as the everest-operator.
Therefore we install the monitoring stack onto a separate namespace for managing everything monitoring related.
CHECKLIST
Jira

[x] Is the Jira ticket created and referenced properly?

Tests

[ ] Is an Integration test/test case added for the new feature/change?
[ ] Are unit tests added where appropriate?

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

:exclamation: No coverage uploaded for pull request base (EVEREST-495-multi-namespaces@c9915ac). Click here to learn what that means.

:exclamation: Current head df75192 differs from pull request most recent head dd24375. Consider uploading reports for the commit dd24375 to get more accurate results

Additional details and impacted files
@@                      Coverage Diff                       @@
##             EVEREST-495-multi-namespaces    #281   +/-   ##
==============================================================
  Coverage                                ?   5.31%
==============================================================
  Files                                   ?      12
  Lines                                   ?    2693
  Branches                                ?       0
==============================================================
  Hits                                    ?     143
  Misses                                  ?    2525
  Partials                                ?      25

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


Create Certifications Table

Description
Create migration for certifications table to hold data on groomer certifications:

id
groomer_id
title
insitute
image
date_issued
date_expired

Create seed for certification for seeded groomer.
Type

[ ] This is a bugfix.
[ ] This is a new feature.
[x] This is part of a feature.

Organization

[x] Have you linked this pull request to a Trello card?
[x] Have you named the branch in the format of feature/describe_feature_or_change OR bug/describe_bug_this_is_fixing

Review

[ ] Is this a work in progress?
[x]  Is this ready to be reviewed?
[x]  Have you added two reviewers to this pull request?

 Create Certifications Table

 Create Certifications Table

 Create Certifications Table

 Create Certifications Table


[feat]: Customizable Base Directory and Alias Resolution

Feature description
In some projects, you may organize your ui folder under a different directory than the defaults used by the CLI. It would be helpful to specify a custom base directory, and even better, to configure resolutions for each alias.
Problem Example
In my current project, I have the following folder structure:
📁 app (current app)
 ├─ 📁 lib
 │   └─🗒 utils.ts
 ├─ 📁 components
 │   └─📁 ui
📁 src (legacy app referenced in `app` for non-migrated components/features)

After running the CI, it incorrectly placed new components under src/components/ui, even though my tsconfig aliases do not point there, and I don’t have any existing UI components in src.
Suggested Solution
It would be beneficial to have the ability to configure these resolutions in components.json. This would allow proper placement of components in the intended directories, and prevent files like lib/utils.ts from being generated repeatedly (though I haven't tested if this happens with utils).
Example components.json Configuration:
{
  "$schema": "https://ui.shadcn.com/schema.json",
  "style": "new-york",
  "rsc": false,
  "tsx": true,
  "tailwind": {
    "config": "tailwind.config.ts",
    "css": "app/tailwind.css",
    "baseColor": "zinc",
    "cssVariables": true,
    "prefix": ""
  },
  "aliases": {
    "components": "~/components",
    "utils": "~/lib/utils",
    "ui": "~/components/ui",
    "lib": "~/lib",
    "hooks": "~/hooks"
  },
  "baseDir": "./app",  // When this is defined, aliases will resolve as usual but with the app directory as the base
  "baseDir": {
    "components": "./app/components/ui",
    // Additional custom base directories for other aliases can be added here
  }
}

Additional Context
Here's an example of my tsconfig.json. I'm not sure if this also affects how the CI resolves paths:
{
  "baseUrl": ".",
  "paths": {
    "~/*": ["./app/*"],
    "~v2/*": ["./src/*"]
  }
}

This feature would provide more control over file placement and avoid issues caused by the default behavior of the CLI. Thank you for considering this improvement!
Affected component/components
cli
Additional Context
This is similar to the tailwind::config and tailwind::css options.
Before submitting

[X] I've made research efforts and searched the documentation
[X] I've searched for existing issues and PRs

The paths parameter in your tsconfig.json is exactly what is responsible for the base directory to host the files. This used to work, but after recent updates it is broken. This problem is detailed in #5433

Thanks @ivan-plotnikov , I see it has since been resolved in https://github.com/shadcn-ui/ui/issues/5433, I will close this now, and re-open it if there are still issues after running the command again.


Asides like Tip don't have coloring but should

Description
Asides like "Tip" and "Experiment" don't have colors in the default theme but should.
Apple's own docs have coloring, so while developing my own docs it looks as if docc was broken since it did not color my Tip boxes -- but it just was missing styling.
See:
Apple theme:

vs OSS theme:

These should be colored by default so the package ecosystem has a consistent good looking aside style.
We can just use the same colors as the apple theme:
    --color-aside-deprecated: var(--color-figure-gray);
    --color-aside-experiment: var(--color-figure-gray);
    --color-aside-experiment-background: var(--color-fill-gray-secondary);
    --color-aside-experiment-border: var(--color-figure-light-gray);
    --color-aside-important: var(--color-figure-gray);
    --color-aside-important-background: var(--color-fill-gray-secondary);
    --color-aside-important-border: var(--color-figure-light-gray);
    --color-aside-note: var(--color-figure-gray);
    --color-aside-note-background: var(--color-fill-gray-secondary);
    --color-aside-tip: var(--color-figure-gray);
    --color-aside-tip-background: var(--color-fill-gray-secondary);
    --color-aside-tip-border: var(--color-figure-light-gray);
    --color-aside-warning: var(--color-figure-gray);

        --color-fill: #000;
        --color-fill-secondary: #161617;
        --color-fill-tertiary: #1d1d1f;
        --color-fill-blue: #0071e3;
        --color-fill-light-blue-secondary: #002a51;
        --color-fill-gray: #f5f5f7;
        --color-fill-gray-secondary: #6e6e73;
        --color-fill-gray-tertiary: #424245;
        --color-fill-gray-quaternary: #333336;
        --color-fill-green-secondary: #002b03;
        --color-fill-orange-secondary: #290d00;
        --color-fill-red-secondary: #300;
        --color-figure-blue: #2997ff;
        --color-figure-gray: #f5f5f7;
        --color-figure-gray-secondary: #86868b;
        --color-figure-gray-secondary-alt: #a1a1a6;
        --color-figure-gray-tertiary: #6e6e73;
        --color-figure-green: #03a10e;
        --color-figure-light-gray: #9a9a9e;
        --color-figure-orange: #f56300;
        --color-figure-red: #ff3037;

https://developer.apple.com/tutorials/css/chunk-vendors.75afc065.css
Checklist

[X] If possible, I've reproduced the issue using the main branch of this package.
[X] This issue hasn't been addressed in an existing GitHub issue.

Expected Behavior
Aside boxes should have good coloring by default
Actual behavior
All aside boxes are gray.
Steps To Reproduce
No response
Swift-DocC-Render Version Information
Swift 5.7

The default styling for DocC Render specifically uses a separate color palette than what is used for Apple Documentation. We currently try to use basic hex colors in DocC Render, which are more common and brand-agnostic, in order to appeal to a wide variety of users.
Can you propose some other color values that fit these parameters?

Sure, let's see -- how about something like these?

So like these below; Though I'm not accessibility expert and not sure if those need to be more intense or not... but they're around the same color tone as we've used in other places so maybe okey?
#F2FCFF - Note
#FFFEF2 - Important
#FFF2F2 - Warning
#F2FFF6 - Tip
#FFF8F2 - Experiment

  Note

    General information that applies to some users.

  Important

    Important information, such as a requirement.

  Warning

    Critical information, like potential data loss or an irrecoverable state.

  Tip
  Helpful information, such as shortcuts, suggestions, or hints.

  Experiment
  Instructional information to reinforce a learning objective, or to encourage developers to try out different parts of your framework.

https://jsfiddle.net/0st53kxz/35/

(note: it seems warning DOES have color, just tips don't)

(note: it seems warning DOES have color, just tips don't)

Correct. The deprecated and warning asides are the only ones with a distinct non-gray color in swift-docc-render at the moment.

\cc @willimholte

@mportiz08, @SamLanier, cool if I grab and work on this one?

@natikgadzhi sure thing. I would suggest running the colors by @SamLanier and adding her as a reviewer to the PR. Also, I should call out that we will want to have light/dark variants for the colors that she described. Feel free to reach out if you have any questions about the code related to the colors and someone on the DocC-Render team can help you out.
\cc @marinaaisa @hqhhuang @dobromir-hristov


Use CMake FindBoost macro.

Remove hard coded paths to boost. Makes it more portable.

Dear Kevin,
thanks for looking into our ranges library and your pull request!
However, your changes remove the information that boost version 1.59 is needed.

My bad, I added the requirement.


[BUG] [TC-DGSW-2.3] CurrentHeapUsed value is greater than CurrentHeapHighWatermark value.

Reproduction steps

Bring up the DUT with All-clusters-app.
Pair the DUT using chip-tool through "Onnetwork" transport.
Test Step 4: Run the command ./chip-tool softwarediagnostics read current-heap-high-watermark 1 0.

DUT Response:

[1726649946.746] [4516:4518] [TOO] Endpoint: 0 Cluster: 0x0000_0034 Attribute 0x0000_0003 DataVersion:<PHONE_NUMBER>
[1726649946.746] [4516:4518] [TOO]   CurrentHeapHighWatermark: 729744

Test Step 5: Run the command ./chip-tool  softwarediagnostics  read current-heap-used 1 0.

Expected DUT Response: CurrentHeapUsed value is less than or equal to CurrentHeapHighWatermark value.
Actual DUT Response:

[1726649951.863] [4520:4522] [TOO] Endpoint: 0 Cluster: 0x0000_0034 Attribute 0x0000_0002 DataVersion:<PHONE_NUMBER>
[1726649951.863] [4520:4522] [TOO]   CurrentHeapUsed: 730384

Bug prevalence
Whenever I try to read CurrentHeapUsed.
GitHub hash of the SDK that was being used
17b1a38e909e7874593bcb87c31be03a5866f1d4
Platform
raspi
Platform Version(s)
RPI - 4, 8GB RAM
Anything else?
Log file: TC-DGSW-2.3.txt
Test Plan Reference: https://github.com/CHIP-Specifications/chip-test-plans/blob/master/src/cluster/software_diagnostics.adoc
Specification Reference: https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DiagnosticsSoftware.adoc#ref_SoftwareResetWatermarks

@KishokG That does not look like a valid test: more memory could have been allocated between step 4 and step 5, so heap used might be larger than the old high watermark value.  The only valid way to test this is to read heap used first, then read the watermark and make sure the watermark is no less than the used value that was already seen.


About the emailAddress property of the return value of enhancedLocation.getAsync

The LocationDetails interface of the return value of enhancedLocation.getAsync contains the emailAddress property and the locationIdentifier property.
In the sample code, the emailAddress property is referenced when the value of the type property of the LocationIdentifier is of type Room.
if (place.locationIdentifier.type === Office.MailboxEnums.LocationType.Room) {
  console.log("Email address: " + place.emailAddress);
}

I understand each property as follows:
For Room type
  LocationIdentifier.id = LocationDetails.emailAddress
For Custom type
  LocationIdentifier.id = LocationDetails.displayName

I'm not sure what the role of the emailAddress property of LocationDetails is.
It appears that the emailAddress property is set for Room and not for Custom.
Are both the emailAddress and id properties exactly the same?
Is there a reason why the sample code references the emailAddress property?

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 8922b63d-51bd-5f4a-0c33-63e9715103c2
Version Independent ID: 9add94e6-3658-b586-4906-3ff07dd10bf7
Content: Get or set the location of an appointment in an add-in - Office Add-ins
Content Source: docs/outlook/get-or-set-the-location-of-an-appointment.md
Product: outlook
Technology: add-ins
GitHub Login: @o365devx
Microsoft Alias: o365devx

Thanks for the question @clavx.
@samantharamon, could you please help provide some clarity?

Thank you for reaching out, @clavx. The emailAddress property provides a direct option to retrieve the email address if the location's a room instead of retrieving it from the id property of the LocationIdentifier object. The sample includes a location type check and the emailAddress property to highlight that only Room type locations have an email address. You correctly pointed out that for Room type locations, emailAddress and id return the same value. I'll update our documentation to clarify the emailAddress property description.

Thank you for your answer.
I'm relieved that my interpretation is right.
My question has been answered.
Thank you!

No worries! I'm glad we could assist with your query. As promised, we're updating our reference documentation to clarify the emailAddress property description (see https://github.com/DefinitelyTyped/DefinitelyTyped/pull/63455). I will now close this issue, but should you require further assistance, please don't hesitate to open a new one.


Reformat style information in html file

Reformat the style information in the generated html file

insert blanks after each property value pair
-> makes generated code more readable

Released with version 1.62.03