Find bugs in nopCommerce 4.20 BETA and earn $10

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.
4 years ago
Dear community!

We have released a BETA version of nopCommerce 4.20 (find more information here). We would like you to test it and share any bugs you find. For bugs that are not yet identified and mentioned in our Github issue tracker we will be granting $10. Please, share your finding in this topic. After a bug is reported and confirmed by our team, please send us a link to the forum post along with your name via our contact form

This offer is valid only until the official nopCommerce 4.20 release (2-3 weeks)

P.S. Typos and other very small issues are not counted for the monetary bonus, though we would appreciate if you point them out.
4 years ago
Glad to know you guys release 4.20 beta
4 years ago
I spotted one, create a spanish language, import the resource strings with this language pack https://www.nopcommerce.com/p/3558/language-pack-es.aspx
Switch the language to spanish, the go to Configuration/Settings/General settings. It crashes.
4 years ago
eikichiz wrote:
I spotted one, create a spanish language, import the resource strings with this language pack https://www.nopcommerce.com/p/3558/language-pack-es.aspx
Switch the language to spanish, the go to Configuration/Settings/General settings. It crashes.

This language pack is for version 4.10 (not for 4.20)
4 years ago
a.m. wrote:
I spotted one, create a spanish language, import the resource strings with this language pack https://www.nopcommerce.com/p/3558/language-pack-es.aspx
Switch the language to spanish, the go to Configuration/Settings/General settings. It crashes.
This language pack is for version 4.10 (not for 4.20)


Yes, so , what causes the crash? a missing value for a key?
4 years ago
After installation completes when running in Docker, container crashes and needs to be restarted.

Importing plugins from .zip causes container to crash. Also no plugins are displayed, not for Docker och in development on localhost.

Not sure if bugs, or just me failing something.
4 years ago
Related to https://github.com/nopSolutions/nopCommerce/issues/3733

->

Id  LogLevelId  ShortMessage  FullMessage  IpAddress  CustomerId  PageUrl  ReferrerUrl  CreatedOnUtc
4  40  The plugin "Widgets.NivoSlider" not installed  System.NotSupportedException: Image cannot be loaded. Available decoders:
- GIF : GifDecoder
- PNG : PngDecoder
- BMP : BmpDecoder
- JPEG : JpegDecoder

   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, Stream stream, IImageFormat& format)
   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, Byte[] data, IImageFormat& format)
   at Nop.Services.Media.PictureService.ValidatePicture(Byte[] pictureBinary, String mimeType) in D:\_work_lumi\NOPCOMMERCE\nopcommerce_4.20_beta\nopCommerce_4.20_Beta_Source\Libraries\Nop.Services\Media\PictureService.cs:line 986
   at Nop.Services.Media.PictureService.InsertPicture(Byte[] pictureBinary, String mimeType, String seoFilename, String altAttribute, String titleAttribute, Boolean isNew, Boolean validateBinary) in D:\_work_lumi\NOPCOMMERCE\nopcommerce_4.20_beta\nopCommerce_4.20_Beta_Source\Libraries\Nop.Services\Media\PictureService.cs:line 763
   at Nop.Plugin.Widgets.NivoSlider.NivoSliderPlugin.Install()
   at Nop.Services.Plugins.PluginService.InstallPlugins() in D:\_work_lumi\NOPCOMMERCE\nopcommerce_4.20_beta\nopCommerce_4.20_Beta_Source\Libraries\Nop.Services\Plugins\PluginService.cs:line 336    NULL      2019-04-30 11:44:52.2528649
4 years ago
Repro
=====
1. Install NopCommerce beta with sample data
2. Enable Redis support for caching.
3. Log into admin and navigate to a product page, example: http://localhost:15536/Admin/Product/Edit/45
4. Result: page error

JsonSerializationException: Self referencing loop detected for property 'SpecificationAttribute' with type 'Castle.Proxies.SpecificationAttributeProxy'. Path '[0].SpecificationAttributeOptions[0]'.

Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CheckForCircularReference(JsonWriter writer, object value, JsonProperty property, JsonContract contract, JsonContainerContract containerContract, JsonProperty containerProperty)

Stack
=====
Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CheckForCircularReference(JsonWriter writer, object value, JsonProperty property, JsonContract contract, JsonContainerContract containerContract, JsonProperty containerProperty)
Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CalculatePropertyValues(JsonWriter writer, object value, JsonContainerContract contract, JsonProperty member, JsonProperty property, out JsonContract memberContract, out object memberValue)
Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, object value, JsonObjectContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList(JsonWriter writer, IEnumerable values, JsonArrayContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, object value, JsonObjectContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList(JsonWriter writer, IEnumerable values, JsonArrayContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize(JsonWriter jsonWriter, object value, Type objectType)
Newtonsoft.Json.JsonSerializer.SerializeInternal(JsonWriter jsonWriter, object value, Type objectType)
Newtonsoft.Json.JsonConvert.SerializeObjectInternal(object value, Type type, JsonSerializer jsonSerializer)
Nop.Core.Caching.RedisCacheManager.Set(string key, object data, int cacheTime) in RedisCacheManager.cs
+
            var serializedItem = JsonConvert.SerializeObject(data);
Nop.Core.Caching.RedisCacheManager.Get<T>(string key, Func<T> acquire, Nullable<int> cacheTime) in RedisCacheManager.cs
+
                Set(key, result, cacheTime ?? NopCachingDefaults.CacheTime);
Nop.Web.Areas.Admin.Factories.ProductModelFactory.PrepareProductModel(ProductModel model, Product product, bool excludeProperties) in ProductModelFactory.cs
+
            model.HasAvailableSpecificationAttributes = _cacheManager.Get(NopModelCacheDefaults.SpecAttributesModelKey,
Nop.Web.Areas.Admin.Controllers.ProductController.Edit(int id) in ProductController.cs
+
            var model = _productModelFactory.PrepareProductModel(null, product);
lambda_method(Closure , object , object[] )
Microsoft.AspNetCore.Mvc.Internal.ActionMethodExecutor+SyncActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, object controller, object[] arguments)
Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeActionMethodAsync()
Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeNextActionFilterAsync()
Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ActionExecutedContext context)
Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(ref State next, ref Scope scope, ref object state, ref bool isCompleted)
Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeInnerFilterAsync()
4 years ago
In 4.1 we could configure Redis to use a specific DB, such as #1. In 4.2 we can no longer do this as cache uses DB #2, Plugin #3, and DataProtection keys #4. I am not clear on why we need to use 3 different Redis DBs vs just using 1, or why we can no longer configure what DB to use. So rather than being able to host multiple nopCommerce instances on 1 Redis instance we now must have a 1:1 NopCommerce to Redis cluster. This is extremely inefficient and very inflexible.
4 years ago
The new code to maintain the installed plugins isn't working correctly.

When you install a fresh copy of the system to a new database, you'll find that all of the plugins included in the base system are installed except NivoSlider. This is confirmed if you look at the plugins.json file - NivoSlider is listed in "PluginNamesToInstall". If you go to the configuration page, you'll see it isn't installed.

Maybe this is a problem with NivoSlider. There are error messages in the log saying it wasn't installed. No useful information, just that it wasn't installed.
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.