deatil / larke-admin

larke-admin 是一套使用 Laravel 、JWT 和 RBAC 鉴权的前后端分离的通用后台管理系统。/ An admin api system with Laravel, JWT and RBAC.
https://github.com/deatil/larke-admin
Apache License 2.0
293 stars 62 forks source link

[Bug]: Object of class DateTimeImmutable could not be converted to int #25

Closed waynesun01 closed 1 year ago

waynesun01 commented 1 year ago

larke-admin 版本

1.6.2

php 版本

8.0.2

Laravel 版本

9.33.0

是否依旧存在

可以

bug描述

登录时一直登录不了: larke-admin-jwt-makeToken: Object of class DateTimeImmutable could not be converted to int file:D:\phpstudy_pro\WWW\virtual-ren\vendor\lake\larke-jwt\src\Builder.php line:125

修改建议

No response

deatil commented 1 year ago

用composer看下admin依赖的包的版本是不是最新的,尤其是larke-jwt这个包

Nash-x9 commented 1 year ago

遇到了同样的问题。

deatil commented 1 year ago

遇到了同样的问题。

换composer源,确定源可以下载最新版本的包

declandragon commented 1 year ago

你好,遇到了同样的问题,我不是下载不了最新版本,我是控制了版本

deatil commented 1 year ago

你好,遇到了同样的问题,我不是下载不了最新版本,我是控制了版本

  • "php": "^8.0"
  • "laravel/framework": "~9.0"
  • "lake/larke-admin": "1.6.2" 想问一下在这个版本下面怎么解决这个问题好点呢?

那你需要找下对应的 lake/larke-jwt 的版本,控制jwt到正确的版本

declandragon commented 1 year ago

你好,遇到了同样的问题,我不是下载不了最新版本,我是控制了版本

  • "php": "^8.0"
  • "laravel/framework": "~9.0"
  • "lake/larke-admin": "1.6.2" 想问一下在这个版本下面怎么解决这个问题好点呢?

那你需要找下对应的 lake/larke-jwt 的版本,控制jwt到正确的版本

现在 lake/larke-jwt 是 1.1.6 因为下一个版本 1.1.9 必须 php 8.1 感觉是因为 lake/larke-admin 和 lake/larke-jwt 没有配制好关联版本,只是被PHP版本控制了 ==

deatil commented 1 year ago

你好,遇到了同样的问题,我不是下载不了最新版本,我是控制了版本

  • "php": "^8.0"
  • "laravel/framework": "~9.0"
  • "lake/larke-admin": "1.6.2" 想问一下在这个版本下面怎么解决这个问题好点呢?

那你需要找下对应的 lake/larke-jwt 的版本,控制jwt到正确的版本

现在 lake/larke-jwt 是 1.1.6 因为下一个版本 1.1.9 必须 php 8.1 感觉是因为 lake/larke-admin 和 lake/larke-jwt 没有配制好关联版本,只是被PHP版本控制了 ==

版本依赖用的最低版本限制都有有这种问题。要不被php限制就只能用确定的版本号来限制依赖才行。 之前的版本限制放得太宽了,现在想限制admin版本依赖更新就会有些问题

declandragon commented 1 year ago

你好,遇到了同样的问题,我不是下载不了最新版本,我是控制了版本

  • "php": "^8.0"
  • "laravel/framework": "~9.0"
  • "lake/larke-admin": "1.6.2" 想问一下在这个版本下面怎么解决这个问题好点呢?

那你需要找下对应的 lake/larke-jwt 的版本,控制jwt到正确的版本

现在 lake/larke-jwt 是 1.1.6 因为下一个版本 1.1.9 必须 php 8.1 感觉是因为 lake/larke-admin 和 lake/larke-jwt 没有配制好关联版本,只是被PHP版本控制了 ==

版本依赖用的最低版本限制都有有这种问题。要不被php限制就只能用确定的版本号来限制依赖才行。 之前的版本限制放得太宽了,现在想限制admin版本依赖更新就会有些问题

请问这个问题确认过是在 lake/larke-jwt 哪个版本修复的吗?我现在因为一些限制不能升级PHP版本,可不可以让对应版本的 lake/larke-jwt ^8.0|^8.1|^8.2 这样子呢?

deatil commented 1 year ago

你好,遇到了同样的问题,我不是下载不了最新版本,我是控制了版本

  • "php": "^8.0"
  • "laravel/framework": "~9.0"
  • "lake/larke-admin": "1.6.2" 想问一下在这个版本下面怎么解决这个问题好点呢?

那你需要找下对应的 lake/larke-jwt 的版本,控制jwt到正确的版本

现在 lake/larke-jwt 是 1.1.6 因为下一个版本 1.1.9 必须 php 8.1 感觉是因为 lake/larke-admin 和 lake/larke-jwt 没有配制好关联版本,只是被PHP版本控制了 ==

版本依赖用的最低版本限制都有有这种问题。要不被php限制就只能用确定的版本号来限制依赖才行。 之前的版本限制放得太宽了,现在想限制admin版本依赖更新就会有些问题

请问这个问题确认过是在 lake/larke-jwt 哪个版本修复的吗?我现在因为一些限制不能升级PHP版本,可不可以让对应版本的 lake/larke-jwt ^8.0|^8.1|^8.2 这样子呢?

主楼的问题是 jwt 更新为强类型,时间变更为了时间类,但是composer因为源的问题没有把jwt更新到最新版的问题。jwt是打的tag版本号,暂时没法改那里的内容。在根目录的composer.json里加一个jwt的锁定版本重新拉取下,对应的jwt版本该说是在1.1. 里面,你从1.1.最新的版本倒着试一下。可以下载jwt覆盖到已经下载的版本路径,不报错的话就锁定这个版本

declandragon commented 1 year ago

你好,遇到了同样的问题,我不是下载不了最新版本,我是控制了版本

  • "php": "^8.0"
  • "laravel/framework": "~9.0"
  • "lake/larke-admin": "1.6.2" 想问一下在这个版本下面怎么解决这个问题好点呢?

那你需要找下对应的 lake/larke-jwt 的版本,控制jwt到正确的版本

现在 lake/larke-jwt 是 1.1.6 因为下一个版本 1.1.9 必须 php 8.1 感觉是因为 lake/larke-admin 和 lake/larke-jwt 没有配制好关联版本,只是被PHP版本控制了 ==

版本依赖用的最低版本限制都有有这种问题。要不被php限制就只能用确定的版本号来限制依赖才行。 之前的版本限制放得太宽了,现在想限制admin版本依赖更新就会有些问题

请问这个问题确认过是在 lake/larke-jwt 哪个版本修复的吗?我现在因为一些限制不能升级PHP版本,可不可以让对应版本的 lake/larke-jwt ^8.0|^8.1|^8.2 这样子呢?

主楼的问题是 jwt 更新为强类型,时间变更为了时间类,但是composer因为源的问题没有把jwt更新到最新版的问题。jwt是打的tag版本号,暂时没法改那里的内容。在根目录的composer.json里加一个jwt的锁定版本重新拉取下,对应的jwt版本该说是在1.1. 里面,你从1.1.最新的版本倒着试一下。可以下载jwt覆盖到已经下载的版本路径,不报错的话就锁定这个版本

非常感谢,之前已经定位到了是类型问题,想着升级JWT版本处理。现在已经解决了,使用 "lake/larke-admin": "1.5.2" 没有该问题,不需要单独控制 lake/larke-jwt 的版本。

这次改动引入了该问题 https://github.com/deatil/larke-admin/blob/d8d3157275b4f0af0382478013d2de71c6603eea/src/larke/admin/Jwt/Jwt.php#L103